Appsmith self-host: Полное руководство по запуску собственной платформы для инструментов
Подробный гайд по установке и настройке Appsmith — open-source платформы для создания админ-панелей и дашбордов. Способы через Docker Compose и Proxmox. Интеграция с БД и API.
Подготовка окружения и установка Docker
Обновите пакеты системы и установите Docker и Docker Compose официальным способом.
sudo apt update && sudo apt upgrade -y
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo apt install docker-compose-plugin -y
docker --version
docker compose versionСоздание директории и файла docker-compose.yml
Создайте папку для проекта и файл конфигурации docker-compose.yml с описанием сервисов (PostgreSQL, Redis, Appsmith).
mkdir -p ~/appsmith && cd ~/appsmith
nano docker-compose.ymlСодержимое docker-compose.yml
Вставьте следующую конфигурацию в открытый файл docker-compose.yml. Она определяет базу данных, Redis и само приложение Appsmith.
version: '3.9'
services:
db:
image: postgres:15-alpine
restart: unless-stopped
environment:
POSTGRES_DB: appsmith
POSTGRES_USER: appsmith
POSTGRES_PASSWORD: ${DB_PASSWORD}
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U appsmith"]
interval: 5s
timeout: 5s
retries: 5
appsmith:
image: appsmith/appsmith-ce:latest
restart: unless-stopped
ports:
- "8080:80"
environment:
- APPSMITH_DB_URL=postgresql://appsmith:${DB_PASSWORD}@db:5432/appsmith
- APPSMITH_REDIS_URL=redis://redis:6379
- APPSMITH_JWT_SECRET=${JWT_SECRET}
- APPSMITH_ENCRYPTION_SALT=${ENCRYPTION_SALT}
- APPSMITH_ENCRYPTION_KEY=${ENCRYPTION_KEY}
- APPSMITH_DISABLE_TELEMETRY=true
depends_on:
db:
condition: service_healthy
redis:
condition: service_started
volumes:
- appsmith_data:/appsmith-stacks
redis:
image: redis:7-alpine
restart: unless-stopped
volumes:
- redis_data:/data
volumes:
postgres_data:
redis_data:
appsmith_data:Настройка переменных окружения
Создайте файл .env для хранения секретных переменных (пароли и ключи шифрования), чтобы не держать их в открытом виде в docker-compose.yml.
nano .envСодержимое .env
Добавьте переменные в файл .env. Замените значения на надежные и уникальные строки.
DB_PASSWORD=StrongPassw0rd!
JWT_SECRET=super-secret-jwt-key-1234567890abcdef
ENCRYPTION_SALT=another-very-long-salt-abcdef1234567890
ENCRYPTION_KEY=encryption-key-at-least-32-chars-long!Запуск Appsmith
Запустите сервисы в фоновом режиме. Docker Compose скачает образы и запустит контейнеры.
docker compose up -dПроверка статуса и логов
Убедитесь, что контейнеры запущены и работают корректно. Первый запуск может занять 1-2 минуты.
docker compose ps
docker compose logs -f appsmithДоступ к веб-интерфейсу
Откройте браузер и перейдите по адресу вашего сервера на порту 8080. Например: http://192.168.1.100:8080
Первоначальная настройка (First Run)
На открывшейся странице создайте аккаунт администратора (email и пароль). Затем создайте Workspace и первое приложение.
Подключение базы данных (Пример PostgreSQL)
В интерфейсе Appsmith перейдите в раздел Data Sources, выберите PostgreSQL и укажите параметры подключения. Если БД внутри Docker сети, укажите имя сервиса (db) вместо IP.
Host: db
Port: 5432
Database: appsmith
Username: appsmith
Password: StrongPassw0rd! (из .env)