在 Docker 上安裝
這頁依 官方 Linux + Docker CE 文件 整理。目標:在已能執行 docker 的 Linux 上,起一個會自動重開的 Portainer Server,資料寫進獨立 Volume。
事前準備
- 已安裝 Docker Engine。請跟 Docker 官方安裝,不要在 Ubuntu 用 snap 裝 Docker,官方明確寫過相容性問題。
- 有
sudo(或以能操作 Docker 的使用者執行)。 - 防火牆放行
9443(UI)。若要使用 Edge Agent,再放行8000。
SELinux 若必須開啟,部署時可能要加 --privileged。Rootless Docker 有限制,家用請用預設的 rootful Docker。
用 docker run 安裝
先建立資料 Volume,再啟動容器:
docker volume create portainer_data
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:lts
幾個旗標的用意:
-v /var/run/docker.sock:...:讓 Portainer 能對這台主機下 Docker 指令。權限等同這台機器的 Docker 管理員。-v portainer_data:/data:設定與資料庫放這裡,容器重建才不會重來。-p 9443:9443:瀏覽器走 HTTPS。預設是 Portainer 自己簽的憑證,第一次會被瀏覽器擋,屬預期行為。-p 8000:8000:Edge 隧道。確定不用 Edge Agent 可以拿掉,減少暴露面。--restart=always:主機重開後 Portainer 會再起來。portainer/portainer-ce:lts:跟官方文件一樣用 LTS 標籤,比較穩。不要隨便改成來路不明的映像。
舊文件常寫埠 9000(HTTP)。現在預設 UI 是 9443。若必須開舊埠,再加 -p 9000:9000。
確認容器在跑:
應看得到名稱 portainer、埠 9443。
用 Docker Compose 安裝
內容等價,方便之後升級時改映像標籤:
services:
portainer:
container_name: portainer
image: portainer/portainer-ce:lts
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
ports:
- 9443:9443
- 8000:8000 # 不用 Edge Agent 可刪這行
volumes:
portainer_data:
name: portainer_data
開啟介面
瀏覽器開:
本機則用 https://localhost:9443。接著做首次設定。
升級
Portainer 的設定在 Volume 裡,升級是「換成新映像、用同一個 Volume 再跑起來」:
然後用與當初相同的 docker run(或 compose up -d)再建立容器。不要刪 portainer_data。
若要改裝 Business Edition,映像改為 portainer/portainer-ee:lts,Volume 可沿用;首次進入會要求授權金鑰。步驟以 BE 安裝文件 為準。
相關影音
逐步畫面可對照官方影音裡的 Swarm/Agent 示範,以及社群教學的 Linux 安裝影片。指令仍以本頁與官方文件為準,影片裡的埠或標籤可能較舊。