架伺服器
進階
架伺服器

用 Docker 部署網站並加上 HTTPS(Caddy 自動憑證)

在主機上裝 Docker,用一個 compose 檔同時跑你的網站與 Caddy,網域設好就自動有 HTTPS。
1 小時
7 步
主機費用+網域
編
AI 有解編輯部
最後更新 2026 年 11 月 4 日・CC BY 4.0
用到的工具
Docker Compose
Docker 把程式和它需要的環境包在一起,Caddy 負責 HTTPS。兩個加起來,部署只要幾個指令。
你需要準備
•
已完成〈租一台雲端主機並安全設定〉
•
一個網域,並在 DNS 設定 A 紀錄指向主機 IP
•
一個要部署的網站(任何能用 Docker 跑的程式)
進度 0/7
1

安裝 Docker

終端機
curl -fsSL https://get.docker.com | sh sudo usermod -aG docker $USER
登出再登入,執行 docker run hello-world 確認成功。
2

準備資料夾

終端機
mkdir -p ~/site && cd ~/site
3

寫 compose 檔

建立 compose.yaml(這裡用一個示範網站映像檔,換成你自己的即可):
YAML
services: app: image: nginxdemos/hello restart: unless-stopped caddy: image: caddy:2 restart: unless-stopped ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - caddy_data:/data - caddy_config:/config volumes: caddy_data: caddy_config:
4

寫 Caddyfile

文字
your-domain.com { reverse_proxy app:80 }
把 your-domain.com 換成你的網域。Caddy 會自動申請並更新 HTTPS 憑證。
5

啟動

終端機
docker compose up -d docker compose logs -f caddy
看到憑證申請成功後,打開 https://你的網域。
6

更新與備份

終端機
docker compose pull && docker compose up -d # 更新到新版 docker compose ps # 看狀態
資料庫等重要資料要用 volume 保存,並定期備份到主機以外的地方。
7

用 AI 寫你自己的 Dockerfile

提示詞
這是我的專案(Node.js/Python/其他),請寫一個適合正式環境的 Dockerfile: 使用精簡的基礎映像檔、不用 root 執行、只複製需要的檔案,並說明每一行。
你照著做成功了嗎?
成為第一個回報的人。你的回報會決定攻略排序與作者分潤。
下一步
在主機上放你自己的私人 AI:見〈打造自己的私人 ChatGPT〉。
收錄在學習路線
廣告版位
想讓正在用 AI 的人看到你的產品?了解廣告合作
問與答
卡住的地方、補充的做法都可以留在這裡
還沒有人留言。
更多「架伺服器」攻略