Расширение образа с установкой дополнительно nodejs, python и golang
  • Dockerfile 100%
Find a file
ymnuk 979b065e14
All checks were successful
ci/woodpecker/tag/woodpecker Pipeline was successful
Обновить .woodpecker.yml
2026-03-05 12:36:40 +03:00
.woodpecker.yml Обновить .woodpecker.yml 2026-03-05 12:36:40 +03:00
compose.yml Fix Compose 2025-11-30 20:59:43 +03:00
Dockerfile Обновить Dockerfile 2026-02-14 14:21:52 +03:00
LICENSE first commit 2025-11-30 17:01:55 +03:00
README.md first commit 2025-11-30 17:01:55 +03:00

Code Server Custom Build

Docker Woodpecker CI GPL-3.0

Кастомный Docker-образ code-server с предустановленными инструментами для разработки. Собирается автоматически через Woodpecker CI и публикуется в Forgejo Container Registry.

🚀 Особенности

  • Code Server - Веб-версия VS Code
  • Node.js 24 + pnpm - Современный JavaScript/TypeScript стек
  • Go - Язык программирования (версия настраивается)
  • Python 3 + uv/uvx - Быстрый менеджер пакетов Python
  • Qwen Code Agent - AI-ассистент для программирования
  • Автоматическая сборка при создании тегов

📦 Включенные инструменты

Инструмент Версия Назначение
code-server Из тега Веб-версия VS Code
nodejs 24.x JavaScript/TypeScript runtime
pnpm latest Быстрый менеджер пакетов Node.js
go Настраиваемая Язык программирования Go
python3 Системная Python интерпретатор
uv latest Быстрый менеджер пакетов Python
uvx latest Запуск Python утилит без установки
@qwen-code/qwen-code latest AI-агент для помощи в программировании

🛠 Использование

Запуск контейнера

docker run -d \
  --name=code-server \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Europe/Moscow \
  -p 8443:8443 \
  git.ymnuktech.ru/ymnuk/code-server-build:latest

### С переменными окружения

```bash
docker run -d \
  --name=code-server \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Europe/Moscow \
  -e DEFAULT_WORKSPACE=/config/workspace \
  -p 8443:8443 \
  -v /path/to/appdata/config:/config \
  git.ymnuktech.ru/ymnuk/code-server-build:latest
```

### Docker Compose

```yaml
version: "3.8"
services:
  code-server:
    image: git.ymnuktech.ru/ymnuk/code-server-build:latest
    container_name: code-server
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Moscow
    volumes:
      - ./config:/config
      - ./workspace:/config/workspace
    ports:
      - "8443:8443"
    restart: unless-stopped
```

## 🔧 Настройка CI/CD

### Переменные окружения Woodpecker

Перед использованием установите в настройках репозитория:

| Переменная   | Описание                | Пример          |
| ------------ | ----------------------- | --------------- |
| `git_user`   | Пользователь Forgejo    | `your_username` |
| `git_pass`   | Токен доступа Forgejo   | `your_token`    |
| `GO_VERSION` | Версия Go для установки | `1.25.4`        |

### Создание новой версии

1. Создайте тег в формате: `vX.X.X`

   ```bash
   git tag v4.106.2
   git push origin v4.106.2
   ```

2. Woodpecker автоматически соберет и опубликует образ с тегами:
   - `v4.106.2` (версия)
   - `latest` (последняя версия)

## 🏗 Локальная сборка

### Сборка с параметрами по умолчанию

```bash
docker build -t code-server-custom .
```

### Сборка с кастомными версиями

```bash
docker build \
  --build-arg VERSION=4.106.2 \
  --build-arg GOVERSION=1.25.4 \
  -t code-server-custom .
```

## 📁 Структура проекта

```
code-server-build/
├── .woodpecker.yml          # Конфигурация CI/CD
├── Dockerfile              # Docker-образ
├── README.md              # Документация
└── .go-version           # Версия Go (опционально)
```

## 🔍 Доступные теги

- `latest` - Последняя стабильная версия
- `vX.X.X` - Конкретная версия (например: `v4.106.2`)

## 🐛 Отладка

### Проверка установленных инструментов

```bash
docker exec -it code-server node --version
docker exec -it code-server go version
docker exec -it code-server python3 --version
docker exec -it code-server uv --version
docker exec -it code-server pnpm --version
```

### Логи контейнера

```bash
docker logs code-server
```

## 📄 Лицензия

Этот проект распространяется под лицензией [GPL-3.0](LICENSE).