Docker

Docker 是一種軟體平台,可讓您快速地建立、測試和部署應用程式。Docker 將軟體封裝到名為容器的標準化單位,其中包含程式庫、系統工具、程式碼和執行時間等執行軟體所需的所有項目。使用 Docker,您可以將應用程式快速地部署到各種環境並加以擴展,而且知道程式碼可以執行。

Debian 安裝

雖然 PVE 上可以直接架設 Docekr

但,我還是想嘗試一下在 Debian 底下跑 Docker ...

所以就是 PVE -> Debian -> Docker

從 Debian 官網下載最新 ISO 檔案進行安裝

網路的部分,設定一個就可以了

語言設定爲 英文,依照畫面指示安裝就好

當中會跳出是否從 CD-DVD 安裝,選否,從 mirror 安裝

主要是最後面安裝的地方要注意一下,不要安裝圖形化界面,要安裝 SSH

設定好後,重新開機就安裝完成

設定 SSH 登入

nano /etc/ssh/sshd_config

把

#PermitRootLogin prohibit-password

改爲

PermitRootLogin yes

重新啓動 SSH 服務

service sshd restart

設定完成,就可以用 SSH 登入伺服器做設定了

Docker-Transmission-權限設定

Docker 變量化

控制台 新增群組 -> sc-download -> 將 使用者加入

PGID -> ssh 進入 nas vi etc/group 找 sc-download 群組編號
PUID -> ssh 進入 nas vi etc/passwd 找群組下 sc-download 群組下使用者編號

Docker portainer 安裝

安裝好 Debian ,接下來就是開始安裝 Docker 以及管理工具 Portainer.io

用 SSH 登入 Debian 伺服器後

#apt-update 

#apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release

#curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

#echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian \
$(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null

#apt-get update

#apt-get install -y docker-ce

以上就完成前置作業,安裝好 Docker 了

接下來就是安裝 Portainer.io 工具,並部署

docker pull portainer/portainer

建立資料夾,避免之後更新 Docker 容器 時候,資料遺失

mkdir /root/docker
mkdir /root/docker-file

執行部署指令 -p 9000:9000 是指管理界面 Port,/root/docker:/data 是 portainer 的資料庫

docker run -d -p 9000:9000 --restart=always --name portainer -v /root/docker:/data -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer

部署好後,網址打上 IP:Port 就可以進入管理畫面

先設定密碼,然後選擇 Local,因爲沒有要管理其他容器

這樣就完成了






Portainer.io 設定

安裝好後,要先設定網址

左邊選擇 Endpoints -> local

Public IP 打上伺服器IP,例如 10.10.10.20

要找 Docker hub 時候,上網站搜尋

docker hub : https://hub.docker.com/

搜尋到名稱,點進去,右手邊有 Docker Pull Command

直接複製後面名稱,例如顯示 docker pull linuxserver/freshrss 就直接複製 linuxserver/freshrss

貼在 Images -> Image 裏面,在點選 Pull the image,就會出現在底下了

點名稱進去可以看到詳細資料,以及有哪些設定可以設定

Docker 部署

Docker 開始部署

點選 Containers -> +Add container

Name -> 名字

Image -> 直接打上剛剛下載的映像檔名稱 fre -> 會自動跳出來,直接選擇就好

Publish all exposed network ports to random host ports -> 選取,如果不會設定,這個讓他自己隨機給

Volumes -> 如果怕資料不見,這裏要設定對應資料夾到伺服器上面,以免更新容器後消失

要怎樣知道對應的資料夾要怎樣設定,看 Images 裏面,底下 Image layers  裏面有說明

有一項寫 -> VOLUME [/config]  表示,可以設定這個路徑

選擇新增後 -> 點選 Bind

container -> /config #容器內資料位置

host -> /root/docker-file/freshrss #伺服器上資料夾存放名稱,我習慣會在加上各自容器名稱

Env -> 新增如下

name -> TZ
value -> Asia/Taipei

我習慣加上台灣時區

上面都設定好之後,點選 Deploy the container 就可以開始部署了

部署完會回到所有容器界面,點選容器名稱後面的 Published Ports 就能進入管理界面了