差異處
這裏顯示兩個版本的差異處。
兩邊的前次修訂版 前次修改 下次修改 | 前次修改 | ||
tech:n8n_docker_install [2023/05/22 09:54] – jonathan | tech:n8n_docker_install [2023/06/06 12:47] (目前版本) – jonathan | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== | + | ====== 安裝 n8n (Docker-Compose) |
- | * 安裝環境 : [[tech: | + | * 安裝環境 |
+ | |||
+ | ===== 安裝程序 ===== | ||
+ | * 設定 Domain Name Server 進行服務主機對應 Exp. n8n.ichiayi.com -> 192.168.11.52 | ||
+ | * 編輯 docker-compose.yml < | ||
+ | version: " | ||
+ | |||
+ | services: | ||
+ | traefik: | ||
+ | image: " | ||
+ | restart: always | ||
+ | command: | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | ports: | ||
+ | - " | ||
+ | - " | ||
+ | volumes: | ||
+ | - ${DATA_FOLDER}/ | ||
+ | - / | ||
+ | |||
+ | n8n: | ||
+ | image: docker.n8n.io/ | ||
+ | restart: always | ||
+ | ports: | ||
+ | - " | ||
+ | labels: | ||
+ | - traefik.enable=true | ||
+ | - traefik.http.routers.n8n.rule=Host(`${SUBDOMAIN}.${DOMAIN_NAME}`) | ||
+ | - traefik.http.routers.n8n.tls=true | ||
+ | - traefik.http.routers.n8n.entrypoints=web, | ||
+ | - traefik.http.routers.n8n.tls.certresolver=mytlschallenge | ||
+ | - traefik.http.middlewares.n8n.headers.SSLRedirect=true | ||
+ | - traefik.http.middlewares.n8n.headers.STSSeconds=315360000 | ||
+ | - traefik.http.middlewares.n8n.headers.browserXSSFilter=true | ||
+ | - traefik.http.middlewares.n8n.headers.contentTypeNosniff=true | ||
+ | - traefik.http.middlewares.n8n.headers.forceSTSHeader=true | ||
+ | - traefik.http.middlewares.n8n.headers.SSLHost=${DOMAIN_NAME} | ||
+ | - traefik.http.middlewares.n8n.headers.STSIncludeSubdomains=true | ||
+ | - traefik.http.middlewares.n8n.headers.STSPreload=true | ||
+ | - traefik.http.routers.n8n.middlewares=n8n@docker | ||
+ | environment: | ||
+ | - N8N_BASIC_AUTH_ACTIVE=true | ||
+ | - N8N_BASIC_AUTH_USER | ||
+ | - N8N_BASIC_AUTH_PASSWORD | ||
+ | - N8N_HOST=${SUBDOMAIN}.${DOMAIN_NAME} | ||
+ | - N8N_PORT=5678 | ||
+ | - N8N_PROTOCOL=https | ||
+ | - NODE_ENV=production | ||
+ | - WEBHOOK_URL=https:// | ||
+ | - GENERIC_TIMEZONE=${GENERIC_TIMEZONE} | ||
+ | volumes: | ||
+ | - ${DATA_FOLDER}/ | ||
+ | </ | ||
+ | * 依照實際狀況設定環境變數 Exp. | ||
+ | * 資料存放目錄 - /root/n8n | ||
+ | * 服務網址 - https:// | ||
+ | * 登入帳號密碼 - mytest / password_change_me | ||
+ | * 設定時區 - Asia/ | ||
+ | * 申請 Let's Encrypt 憑證的 E-Mail - [email protected] | ||
+ | * .env< | ||
+ | DATA_FOLDER=/ | ||
+ | DOMAIN_NAME=ichiayi.com | ||
+ | SUBDOMAIN=n8n | ||
+ | N8N_BASIC_AUTH_USER=mytest | ||
+ | N8N_BASIC_AUTH_PASSWORD=password_change_me | ||
+ | GENERIC_TIMEZONE=Asia/ | ||
+ | [email protected] | ||
+ | </ | ||
+ | * 建立出資料存放路徑 < | ||
+ | mkdir -p / | ||
+ | </ | ||
+ | * 啟動服務 < | ||
+ | docker compose up -d | ||
+ | </ | ||
+ | * 關閉服務 < | ||
+ | docker compose stop | ||
+ | </ | ||
+ | |||
+ | ===== FAQ ===== | ||
+ | * 如果 Let's Encrypt 憑證要改用 Cloudflare DNS 認證, docker-compose.yml 要將以下三行< | ||
+ | : | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | : | ||
+ | </ | ||
+ | : | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | environment: | ||
+ | - CF_API_EMAIL=${SSL_EMAIL} | ||
+ | - CF_DNS_API_TOKEN=pGuxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxfZgtYJa | ||
+ | </ | ||
===== 參考網址 ===== | ===== 參考網址 ===== | ||
* https:// | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
{{tag> | {{tag> | ||