Перейти к содержимому
PortDock

Руководство по установке

PortDock работает на любом Linux-сервере под вашим контролем — VPS, машине в дата-центре или виртуальной машине on-premises.

Требования

  • Linux-сервер — рекомендуются Ubuntu или Debian — с доступом root
  • Свободные порты 80 и 443 для HTTPS-прокси
  • Достаточно памяти для ваших приложений и баз данных (SQL Server нужно около 2 ГБ)
  • Docker — установщик добавит его, если его нет

01

Вариант 1 — установщик

Устанавливает Docker, если его нет, и запускает PortDock. Укажите домен, направленный на сервер, чтобы получить HTTPS для панели.

Shell
$ git clone https://github.com/gavrilencu/PortDock.git portdock && cd portdock$ sudo bash install.sh                               # панель на http://<ip-сервера>:8000$ sudo bash install.sh https://portdock.example.com  # или с доменом

Если порт 8000 занят, установщик выберет следующий свободный и выведет адрес (или задайте PORTDOCK_PORT=9000).

02

Вариант 2 — Docker-образ

Если Docker уже установлен.

Shell
$ docker run -d --name portdock --restart unless-stopped \  -p 8000:8000 \  -v /var/run/docker.sock:/var/run/docker.sock \  -v /data/portdock:/data/portdock \  -e PORTDOCK_PUBLIC_URL=http://<ip-сервера>:8000 \  ghcr.io/gavrilencu/portdock:latest

Монтируйте каталог данных по тому же пути, что и на хосте (/data/portdock): сборки и бэкапы монтируются во вспомогательные контейнеры по абсолютному пути.

Дальше

  1. 01

    Создайте аккаунт владельца

    Откройте панель: первый аккаунт становится владельцем организации.

  2. 02

    Запустите прокси

    Серверы → localhost → Запустить настройку устанавливает сеть и прокси Traefik.

  3. 03

    Подключите код

    Настройки → Источники Git: подключите GitHub или Azure DevOps либо используйте любой Git-URL.

  4. 04

    Разверните

    Новый ресурс → Git-репозиторий, Docker-образ, Compose, база данных или сервис.

Подключение удалённых серверов

  1. 1.Серверы → Подключить сервер, затем создайте SSH-ключ.
  2. 2.Добавьте публичный ключ в ~/.ssh/authorized_keys на сервере (рекомендуется пользователь root).
  3. 3.Нажмите «Запустить настройку»: будут установлены Docker, сеть portdock и прокси Traefik.
  4. 4.По желанию: задайте wildcard-домен (*.apps.example.com → IP сервера) для автоматических доменов и превью.

Конфигурация

Переменные окружения контейнера PortDock.

ПеременнаяПо умолчаниюОписание
PORTDOCK_ADDR:8000HTTP-адрес для прослушивания
PORTDOCK_PORT8000Порт хоста для install.sh и docker-compose.yml
PORTDOCK_DATA_DIR/data/portdockБаза данных, ключ шифрования, сборки и бэкапы
PORTDOCK_PUBLIC_URLhttp://localhost:8000Внешний URL для вебхуков; https:// включает защищённые cookie
PORTDOCK_SECRET_KEYсоздаётсяAES-ключ для секретов — сохраните его резервную копию
PORTDOCK_MAX_BUILDS4Параллельные деплои
PORTDOCK_NETWORKportdockDocker-сеть, общая с Traefik
PORTDOCK_OPENROUTER_URLhttps://openrouter.ai/api/v1API для ИИ-ассистента

Обновления

PortDock проверяет наличие нового релиза при каждом открытии и показывает «Доступно обновление» на боковой панели. Один клик — и PortDock делает резервную копию базы и ключа, пересоздаёт себя с новой версией и автоматически откатывается, если она не запускается. Приложения продолжают работать; можно включить автоматические ночные обновления.

Восстановление из командной строки

Потеряли доступ? Сбросьте пароль или отключите двухфакторную аутентификацию прямо на сервере.

Shell
$ docker exec portdock portdock -reset-password admin@example.com$ docker exec portdock portdock -disable-2fa user@example.com

Разработка

Бэкенд на Go и фронтенд на React; мы рады вашему участию.

Shell
$ make dev-api   # бэкенд на :8000$ make dev-ui    # Vite на :5173$ make test      # go vet, go test и проверка TypeScript$ make build     # bin/portdock со встроенным интерфейсом