📔心得
一直以來都在使用container下去跑測試環境,所以都是使用docker指令下去做除錯,最近因緣際會下找到這一款可以透過UI看全部的container狀態,真的覺得好用到爆炸,所以來介紹一下這款容器化管理神器。
基本上能用docker指令做到的事情,portainer都能做到,像是docker ps,查看所有container,接著點擊某個container,就會顯示基本的container訊息。裡面能針對這個container查看logs,inspect,stat等等,功能非常齊全。 我自己最常使用的就是docker logs,透過UI可以直接點擊Logs查看,方便很多。
依照類型也會分出stack,container,image,network,volume等等,都可各別下去做新增,查看與管理,有時候東西建了忘記刪,這邊會顯示unused,打勾後就能一鍵移除。
portainer從拉image到deploy container都能透過ui完成,對於更新版本也是很有一套,可以透過設定pull latest並點擊recreate進行container的更新,對於常常使用container測試者真的是一大福音。
👨💻簡介
- portainer主要讓我們能有個UI介面管理我們的docker,對於初學docker指令不太熟的使用者能快速進入docker的世界,並且可從docker hub一鍵拉取image,設定network、volume等進行快速部署,都可藉由portainer完成。
🎯setup
透過docker-compose.yml建立portainer
- 建立docker-compose.yml
# docker-compose.yml
version: "3"
services:
portainer:
image: portainer/portainer-ce
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
ports:
- 9000:9000
container_name: portainer
volumes:
portainer_data: {}
2. 執行docker-compose up -d
3. 設定系統管理員
4. finish
🔰基礎介紹(本地環境)
1. Dashboard
上面的Environment info為當前本地的系統環境基本資訊
- 6 core cpu
- 8.3 ram
- docker版本為20.10.17
- URL為我掛載的docker.sock路徑
底下為當前所有的docker配置
2. Stacks
- 使用docker-compose起的就會形成一個stack,可顯示當前所跑的stack list,以及這個stack跑的container資訊
- 如果要自己新增stack可點擊Add stack把自己寫好的docker-compose.yml貼上去並按下Deploy the stack即可建立。
3. Containers
- 可針對container做啟動停止暫停刪除等等的基本操作,在list介面可顯示當前所有container的基礎資訊。Quick Actions從左到右分別為Logs、Inspect、Stats、Exec Console、Attach Console
- Logs:方便查看當前container log狀況
- Inspect:跟docker inspect一樣,但可視程度較高,有轉成樹狀結構
- Stats:可查看cpu、mem、network等使用率,以及顯示當前使用了哪些進程
- 新增container的方式也是很簡單,透過Add container之後設定image的基本設定即可成功建立container,底下也可設定volume、network等等。
4. Images
- 這邊最上面可直接輸入image name做pull image的動作,下面則是顯示當前本地所有的images,對於沒再使用的image這邊會顯示Unused真的方便許多,一鍵即可移除,點擊進去可看到image的基本資訊,並且能顯示image layers,對於自己撰寫dockerfile幫助很大。
- 如果要自己建立image可點擊Build a new image,將自己寫的dockerfile貼上去建立image。