services: proxy: build: ./proxy restart: always env_file: .env environment: EXTERNAL_PROXY_HOST: ${EXTERNAL_PROXY_HOST:-} EXTERNAL_PROXY_PORT: ${EXTERNAL_PROXY_PORT:-} EXTERNAL_PROXY_USER: ${EXTERNAL_PROXY_USER:-} EXTERNAL_PROXY_PASS: ${EXTERNAL_PROXY_PASS:-} # Порт только внутри Docker-сети, наружу не светим postgres: image: postgres:16-alpine restart: always env_file: .env environment: POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGRES_DB} volumes: - n8n_postgres_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -h localhost -U ${POSTGRES_USER:-n8n} -d ${POSTGRES_DB:-n8n}"] interval: 5s timeout: 5s retries: 10 n8n: image: n8nio/n8n:2.7.5 restart: always depends_on: postgres: condition: service_healthy proxy: condition: service_started env_file: .env environment: DB_TYPE: postgresdb DB_POSTGRESDB_HOST: postgres DB_POSTGRESDB_PORT: 5432 DB_POSTGRESDB_DATABASE: ${POSTGRES_DB} DB_POSTGRESDB_USER: ${POSTGRES_USER} DB_POSTGRESDB_PASSWORD: ${POSTGRES_PASSWORD} N8N_PROTOCOL: https N8N_HOST: n8n.clientright.ru WEBHOOK_URL: https://n8n.clientright.ru/ # Весь трафик n8n — через локальный Squid; выборочно домены идут во внешний прокси HTTP_PROXY: http://proxy:3128 HTTPS_PROXY: http://proxy:3128 NO_PROXY: postgres,127.0.0.1,localhost,n8n.clientright.ru ports: - "127.0.0.1:5678:5678" volumes: - n8n_data:/home/node/.n8n volumes: n8n_postgres_data: n8n_data: