介紹一款docker管理工具——portainer
1.背景
docker 因為有比VMWare等虛擬機器擁有得天獨厚的優勢(詳見如下列表),備受開發者與運維者喜愛。
特性 | docker容器 | 虛擬機器 |
---|---|---|
啟動 | 秒級 | 分鐘級 |
硬碟使用 | 一般為MB | 一般為GB |
效能 | 接近原生(宿主機) | 弱於原生 |
系統支援量 | 單機支援上千個容器 | 一般幾十個 |
因此,如何管理好docker也變得尤為重要。
1.1 管理docker方法上一般有兩種
1.1.1 命令列形式
啟動docker:systemctl start docker
停止docker:systemctl stop docker
重啟docker:systemctl restart docker
檢視docker狀態:systemctl status docker
開機啟動:systemctl enable docker
當前系統docker資訊:docker info
列舉出所有的容器:docker ps -a
停止容器:docker start 容器ID或容器名
直接關閉容器:docker kill 容器ID或容器名
重啟容器:docker restart 容器ID或者容器名
刪除容器:docker rm 容器ID或者容器名
檢視映象:docker image ls
1.1.2 UI工具形式
遠端看docker的日誌(需要記住日誌檔案路徑),直接進入docker內部的命令列,直接使用類似
docker exec -it [containerid] bash
不易記住,且需要記住容器的id或者名稱,稍顯不方便。故,今天介紹一款docker 介面管理工具Portainer。
2.docker基於介面管理工具Portainer
Portainer是Docker的圖形化管理工具,提供狀態顯示皮膚、應用模板快速部署、容器映象網路資料卷的基本操作(包括上傳下載映象,建立容器等操作)、事件日誌顯示、容器控制檯操作、Swarm叢集和服務等集中管理和操作、登入使用者管理和控制等功能。功能十分全面,基本能滿足中小型單位對容器管理的全部需求。
Github 上專案地址:https://github.com/portainer/portainer
2.1 下載與安裝
//docker搜尋
docker search portainer
//docker拉取映象
docker pull portainer/portainer:latest
2.2 啟動執行
單機執行模式,直接執行在當前宿主機。並分配9000埠.
docker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name prtainer-test portainer/portainer
2.3 開啟管理工具
宿主主機IP+9000埠開啟
2.4 首次登陸需要註冊使用者,給admin使用者設定密碼
2.5 連線到本地
單機版這裡選擇local即可,選擇完畢,點選Connect即可連線到本地docker:
2.6 對映象的管理
可對本地的映象列表做方便的增刪改查。在映象列表可以直接從DockerHub, pull一個映象,可以從遠端pull,也可以從私有庫中pull。從私有庫中pull,需要將私有庫的地址提前進行配置(Registries)。
2.7 私有映象倉庫管理
可以設定對gitlab或者私有映象倉庫的連結設定
2.8 對容器的管理
2.8.1 建立容器
單擊左側的“App Templates”按鈕。這將顯示一些現成的可用模板,例如Nginx,Httpd,MySQl,WordPress等。選擇要部署的容器,只需單擊相應的模板。
2.8.2 容器管理
在此介面可以對所有容器進行增刪改查操作,並且可以對單個容器或者批量容器進行重啟,開始,停止,關閉等操作。
2.8.3 對某容器進行業務操作
對某容器日誌檢視,命令列輸入,狀態檢視等
2.8.3.1 日誌檢視
portainer會自動提取日誌檔案,可對某日誌擷取最後行數,並且實時列印日誌
很人性化的一個功能是能對日誌進行搜尋
2.8.3.2 對容器資源使用統計
對容器應用的CPU使用,記憶體使用以及網路使用情況進行統計
2.8.3.3 命令視窗使用
最方便的就是不用再登入linux,直接基於瀏覽器就能登入任一容器內部的命令列做配置等其他操作。
2.9 叢集管理
讀者可根據需求自行研究
版權宣告:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連結和本宣告。
本文連結:https://www.cnblogs.com/JerryMouseLi/p/15571897.html