寫在前面
玩nas的小伙伴對docker一定都不陌生,什么,你問我docker是什么?以下內容摘自百度百科。
Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的鏡像中,然后發布到任何流行的 Linux或Windows 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口。
什么,你讓我講人話?好的吧,個人覺得,docker就相當於一個虛擬機,在docker里裝載的鏡像可以隨意折騰,boom了?不慌,重裝一下就好了,保障宿主機資料安全。
今天介紹的是docker下的portainer。借用portainer可以方便的管理docker,最重要的是,學會了使用portainer可以讓你在切換設備以后可以更快的上手,因為portainer的應用是跨平台的,不管是在N1的armbian亦或者是小鋼炮,Unraid,群暉,威聯通等等都可以快速的上手。portainer可以自動拉取很多開發者的默認設置,對於我們來說會方便些,至少對我來說是這樣。
食用本文的效果
-
成功安裝portainer
-
通過portainer裝載docker鏡像
-
portainer下docker應用的設置
-
以及一個經常寫文章帶你玩轉NAS的作者
喜歡奶爸的作者請關注、點贊、打賞評論哦。
正文部分
portainer的安裝
首先你需要安裝docker,群暉、威聯通等白設備可以直接安裝。N1小鋼炮的話,只需要啟動一下DOCKER UI即可。Unraid,這種高端局我就不用介紹了吧。
進入終端,輸入代碼:
docker run -d -p 9000:9000
--restart=always
-v /var/run/docker.sock:/var/run/docker.sock
--name prtainer-test
docker.io/portainer/portainer
直至拉取成功,講真我覺得輸入代碼挺帥的,但是卻總透着一股不方便。最簡單的一點:奶爸閉着眼想也知道上面代碼后面的“”會消失。然后就會有正入門的值友問,命令怎么不對呀....... 實際上他是這樣的。
Portainer的初始化設置
首先設置用戶名以及密碼,記號以后備用
在宿主機的Ip后面跟上我們剛剛賦予他的端口號9000,即可進入portainer界面,這里我們是為了使用本機的docker,所以直接選擇local,如果需要集群的小伙伴可以選擇remote。
安裝我們的第一個docker鏡像
點擊左側欄container,然后電解add container
本文是用燈大的typecho,name隨心輸入,image這里直接輸入想要拉取的“用戶名/鏡像名:版本號”
那這個舉例子來說就是80x86是燈大在dockerhub的用戶名,想要拉取的竟像是typecho(就是博客),鏡像版本是amd64(x86)。所以image里輸入的是80x86/typecho:amd64
點擊下方的deploy即可進行安裝,
安裝時按鈕會變成這個樣子。
安裝后返回home可以看到容器的狀態,可以看到正在啟動
下面是我有在用的幾個容器的運行狀態。
使用默認安裝的話,可以看到端口這里是空的,那我們怎么訪問我們的容器呢,不妨讓我們來完善一下容器的設置,點擊容器名
安裝鏡像的頁面又重新出現在了眼前,點擊這個按鈕的話,會自動分配一個端口號來映射容器默認的端口號
點擊應用的話,會彈出對話框:你確定嗎,你真的確定嗎,你真的要這樣做嗎?是的,我們真的要這樣做,點擊repalce
可以看到剛剛的容器列表里顯示出來端口號信息了
瀏覽器訪問正常
注:奶爸收集資料的時候看到有人推薦使用這個自動分配端口號,但是奶爸這里建議,一定要所有參數、設置都配置號之后,再去做端口轉發,奶爸不在家折騰研究portainer的時候,一重新設置端口就變了,一重新設置端口就變了,然后不停的改端口轉發,難受的不要不要的。
另外奶爸更腿甲直接固定了容器的端口,這樣的話,就算重新配置容器,這個參數是不會變的,方便在外面的時候進行折騰。
這里奶爸用了99端口,搞定。
同時為了容器數據的方便快速遷移,我們要將容器存儲數據的位置進行設置。和群暉里配置文件和文件夾的原理是一樣的。可以看到左下框起來的地方是一個虛擬的路徑,將來要做遷移的時候就會很麻煩。(雖然麻煩但也是可以的,需要先從容器復制到宿主機,然后再做遷移備份)所以我們直接映射到本機的文件目錄。
點擊bind
奶爸使用的是unraid,所以host路徑前面是需要加/mnt/user的,這樣才能指向硬盤。
注*Unraid的文件夾名稱是區分大小寫的,大小寫會分別形成兩個文件夾:
這是沒有自定義映射的時候
這是做了自定義映射以后的情況
這樣的話,當我們需要重裝鏡像的話,就可以直接將配置文件導入出來備份存儲,就算是要切換設備,只要配置、數據在就可以省掉我們很多麻煩。
硬件轉碼設備添加
相信很多小伙伴都有轉碼的需求,比如燈大的fbe,jellyfin等。
注意,首先需要你的設備是有核顯的,如果使用的是N1之類的...就放棄吧。
沒添加設備時的cpu占用狀態
操作添加設備以后轉碼的cpu占用狀態,穩。
Env這里時相關參數,對的,就是有時候在群暉鏡像里面設置的那一堆,亦或者是在輸入指令的時候需要輸入的那一堆。使用portainer可以直接拉取。如果需要修改的話,直接可以到這里修改。
方便的容器管理
進入容器以后,可以看到所有的容器,后面也跟着端口映射情況,我們是不是就可以通過點擊這里直接跳轉到容器的管理頁面了呢?
答案是否定的,因為我們還需要進行一點設置才能夠實現,可以看到直接點擊以后地址欄會自動填入0.0.0.0.
點擊左側面板endpoints,選擇local
在下圖所示的位置輸入宿主機的ip
再點擊一下剛才的位置,哦豁,進來了
容器數據、配置的備份與恢復
使用winscp或者FBE等等工具,直接將我們剛剛配置路徑的文件夾復制出來,就好了,重裝了容器以后,直接將文件復制進配置好的路徑即可。
總結
portainer的簡單使用教程到此位置,使用portainer還可以對多台設備的docker進行集群管理,可以說是方便至極。希望小伙伴們玩耍愉快。