Виртуальный сервер
Аренда виртуального сервера: Beget
Технические характеристики: 2 Core CPU, 2 Gb RAM, 10 Gb NVME
Операционная система: Ubuntu 22.04
Подключение к серверу
Терминал для работы Termius: Ссылка на магазин Microsoft
Логин: root
Пароль: пароль был создан во время аренды виртуального сервера, можно скопировать его с админ панели.
Docker
- Обновить пакеты
ShellScript
sudo apt update
- Апгрейд пакетов
ShellScript
sudo apt upgrade
- Обновить пакеты
ShellScript
sudo apt update
- Дополнительные пакеты
ShellScript
sudo apt install curl software-properties-common ca-certificates apt-transport-https -y
- Импортируем ключ доступа
ShellScript
curl -f -s -S -L https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- Добавляем репозиторий
ShellScript
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu jammy stable"
- Обновить пакеты
ShellScript
sudo apt update
- Проверка репозитория (должны увидеть ответ, как из видео. Если ответ не похож, проходим все шаги с начала до этого шага)
ShellScript
apt-cache policy docker-ce
- Установка Docker
ShellScript
sudo apt install docker-ce -y
- Установка docker-compose
ShellScript
apt install docker-compose
- Проверка установки Docker
ShellScript
docker version
- Проверка установки Docker compose
ShellScript
docker compose version
- Проверка установки docker-compose
ShellScript
docker-compose version
Portainer
- Создаем директорию на сервере
ShellScript
docker volume create portainer_data
- Установка Portainer с необходимыми параметрами
ShellScript
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
- Проверка запущенных контейнеров
ShellScript
docker ps
N8N
После релиза N8N версии 1.0.0 и выше некоторые дополнительные параметры для оптимизации больше не нужны. Вид кода ниже немного отличается от видео, но не критично для понимания настройки и установки.
Docker compose конфигурация для установки
YAML
version: "3.8"
volumes:
n8n_app_data:
n8n_db_data:
services:
postgres:
image: postgres
restart: always
environment:
- POSTGRES_USER
- POSTGRES_PASSWORD
- POSTGRES_DB
- POSTGRES_NON_ROOT_USER
- POSTGRES_NON_ROOT_PASSWORD
- EXECUTIONS_DATA_PRUNE=true
volumes:
- n8n_db_data:/var/lib/postgresql/data
- ./init-data.sh:/docker-entrypoint-initdb.d/init-data.sh
healthcheck:
test: ['CMD-SHELL', 'pg_isready -h localhost -U ${POSTGRES_USER} -d ${POSTGRES_DB}']
interval: 5s
timeout: 5s
retries: 10
n8n:
image: docker.n8n.io/n8nio/n8n
restart: always
ports:
- "5678:5678"
links:
- postgres
environment:
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=${POSTGRES_DB}
- DB_POSTGRESDB_USER=${POSTGRES_NON_ROOT_USER}
- DB_POSTGRESDB_PASSWORD=${POSTGRES_NON_ROOT_PASSWORD}
- NODE_ENV=production
- WEBHOOK_URL=${DOMAIN}
- GENERIC_TIMEZONE=${TIMEZONE}
- EXECUTIONS_DATA_SAVE_ON_SUCCESS=none
- EXECUTIONS_DATA_SAVE_MANUAL_EXECUTIONS=false
- EXECUTIONS_DATA_PRUNE=true
depends_on:
postgres:
condition: service_healthy
volumes:
- n8n_app_data:/home/node/.n8n
- /n8n-local-files:/files
ENV – переменные для установки
Логины и пароли для USER и NON ROOT USER должны быть одинаковыми
ShellScript
DOMAIN= 'адрес вашего сервера или домен, полностью с http или https'
TIMEZONE=Asia/Yekaterinburg
POSTGRES_USER=superadmin
POSTGRES_PASSWORD=Superpassword1!
POSTGRES_DB=n8n
POSTGRES_NON_ROOT_USER=superadmin
POSTGRES_NON_ROOT_PASSWORD=Superpassword1!
NGINX Proxy manager
Docker compose конфигурация для установки
YAML
version: '3.8'
services:
nginx:
image: 'jc21/nginx-proxy-manager:latest'
container_name: nginx_proxy_manager
restart: unless-stopped
ports:
- '80:80'
- '81:81'
- '443:443'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
networks:
- nginx_proxy_manager_default
networks:
nginx_proxy_manager_default:
external: true
Стандартные логин и пароль
ShellScript
Email: admin@example.com
Password: changeme
Оставьте комментарий