Squop Docs
Быстрый старт
Настоящая инструкция предполагает, что Squop устанавливается на чистый VPS или выделенный сервер.
Варианты запуска
Есть два базовых сценария:
external-proxy— основной вариант для сервера с доменом, HTTPS и внешним reverse proxy.sandbox— для локальной проверки и тестов без полноценного HTTPS.
Ниже показан быстрый старт для external-proxy.
Что нужно перед запуском
Перед установкой подготовьте:
- сервер на Ubuntu/Debian-like Linux;
- минимум 2 CPU, 4 GB RAM и 10 GB свободного места;
- домен, который указывает на ваш сервер;
- Docker и Docker Compose plugin;
- reverse proxy: например Caddy или Nginx.
Подготовить сервер
Обновите пакеты и установите базовые утилиты:
sudo apt update
sudo apt install -y ca-certificates curl unzipУстановите Docker и Docker Compose plugin по официальной инструкции Docker для вашей системы (https://docs.docker.com/engine/install/ubuntu/).
Проверьте, что Docker работает:
docker --version
docker compose versionНастроить reverse proxy
В режиме external-proxy Squop слушает локальный порт 127.0.0.1:8080. Внешний web server принимает HTTPS-трафик и проксирует его в Squop.
Пример для Caddy:
sudo mkdir -p /opt/edge-proxy
sudo tee /opt/edge-proxy/Caddyfile >/dev/null <<'EOF'
your_domain.ru {
reverse_proxy 127.0.0.1:8080 {
header_up Host {host}
header_up X-Forwarded-Host {host}
header_up X-Forwarded-Proto https
header_up X-Forwarded-Port 443
}
}
EOFПример для Nginx:
server {
listen 443 ssl http2;
server_name your_domain.ru;
ssl_certificate /path/to/fullchain.pem;
ssl_certificate_key /path/to/privkey.pem;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Port 443;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}Замените your_domain.ru на свой домен и укажите реальные пути к TLS-сертификатам, если используете Nginx.
Скачать Squop
Скачайте архив self-hosted версии и перейдите в директорию установки:
mkdir -p /var/www && cd /var/www
curl -L -o squop_selfhost.zip https://squop.ru/squop_selfhost.zip
unzip squop_selfhost.zip
cd squop_selfhost
chmod +x squopctlПринять правила использования
Перед запуском squopctl ознакомьтесь с правилами self-hosted использования.
Если вы принимаете правила, создайте обязательный файл подтверждения:
cp .license.example .licenseБез файла .license с подтверждением принятия правил команды squopctl выполняться не будут.
Создать конфиг
Создайте стартовые файлы конфигурации:
./squopctl init --profile external-proxyПосле этого появятся файлы:
state/deploy.env— публичные настройки запуска;state/secrets.env— секреты и данные первого администратора.
Сохраните state/secrets.env для этого instance. После установки его нельзя перегенерировать при обновлениях или перезапусках: пароль БД в файле должен совпадать с паролем внутри сохранённого Postgres volume.
Откройте эти файлы и проверьте основные значения:
PUBLIC_URL=https://your_domain.ru
HTTP_PORT=8080
ADMIN_PATH=admin
INITIAL_ADMIN_EMAIL=admin@example.comPUBLIC_URL должен быть HTTPS-адресом вашего домена. Если ADMIN_PATH=admin, админка будет доступна по адресу https://your_domain.ru/admin.
Проверить и установить
Сначала проверьте сервер и конфиг:
./squopctl preflightЕсли проверка прошла успешно, запустите установку:
./squopctl installКоманда скачает Docker images, поднимет контейнеры, выполнит миграции, создаст первого администратора и проверит запуск.
Проверить результат
Посмотрите состояние установки:
./squopctl status
./squopctl verifyПосле успешной проверки откройте Squop в браузере:
https://your_domain.ruЕсли путь админки не менялся, админка будет здесь:
https://your_domain.ru/adminПолезные команды
./squopctl logs
./squopctl restart
./squopctl down
./squopctl reset --destroy-data
./squopctl check-update
./squopctl updatelogsпоказывает логи контейнеров.restartпересоздает runtime после изменения конфига.downостанавливает Squop без удаления данных.reset --destroy-dataудаляет Docker volumes, включая Postgres. Используйте только для полного сброса.check-updateпроверяет наличие новой версии.updateзапускает обновление.