我們使用 cookie 以優化網頁。請閱讀我們的 Cookie 政策

NAS 145

Portainer 基本功能介紹

使用 Portainer 於 ASUSTOR NAS 中下載 Docker 映像檔及部署容器

2019-03-18

課程目的

完成此課程後您將能夠:
1. 使用 Portainer 來下載所需的 Docker 映像檔。
2. 使用 Portainer 將下載的映像檔部署容器執行。


必修項目

課程必修項目:


學生須先具備以下知識:
Docker / 映像檔 (Image) / 容器 (Container)


大綱

1. 安裝 Portainer

2. 設定本機 Docker

3. 下載 Docker 映像檔 (Pull Images)

3.1 在 dockerhub 上搜尋

3.2 下載映像檔

4. 部署 Docker 容器 (Deploy Container)

5. 新增其他端點 (Add Endpoint)

6. 遠端連線 NAS 部署的 Container





1. 安裝 Portainer

步驟 1

  • 使用網頁瀏覽器並以 “ admin “ 帳號登入 ADM。
  • 在 ADM 畫面上選擇 [App Central]
  • [ASUSTOR Apps] 選擇 [Portainer] 後,按下 [安裝]


適用機種:AS31, 32, 40, 50, 51, 61, 62, 63, 64, 70。


步驟 2

  • 若 docker-ce 還未安裝,App Central 會先安裝 docker-ce,然後再安裝 Portainer。
  • 安裝完 Portainer 後,在 ADM 畫面上選擇 [Portainer]
  • 請使用 App Central 中 Portainer 所描述的資訊建立 admin 帳號。
  • ASUSTOR 建議您於左側框架 [Users] 中,修改 admin 密碼。





2. 設定本機 Docker

初次執行 Portainer,先設定本機 Docker 環境,即可在 NAS 上使用 Portainer 基本功能。

  • 於初始畫面中,選擇 [Local],點選 [Connect]


  • 於左側框架點選 [Endpoints] 後,選擇 [local]
  • [Endpoint details] 頁面中輸入 NAS Public IP,這是 Docker 部署 Container 的 Default IP。




  • 3. 下載 Docker 映像檔 (Pull Images)

    3.1 在 dockerhub 上搜尋

    Portainer 會使用 dockerhub 來下載映像檔,因此,需先在 dockerhub 上搜尋所需映像檔的正確路徑及名稱。相同功能或名稱的映像檔可能會有不同開發者上傳不同版本,輸入正確的路徑及名稱才能下載正確的版本。
    範例: [dockerhub]

  • 於 dockerhub 搜尋 “phpmyadmin”,較熱門的版本會排在前面,點選所需的項目,進入該 Container 的頁面。


  • 於 phpmyadmin 頁面,右側會顯示此映像檔的下載指令。



  • 3.2 下載映像檔

  • 於 Portainer 左側框架中選擇 [Images]
  • [Pull image] 頁面,輸入於 dockerhub 中的映像檔下載路徑,點選 [Pull the Image]
  • Portainer 預設會下載 [latest] 版本的映像檔,使用者可以依 dockerhub 裡的說明,下載其他 tag 的版本。


  • 下載映像檔所需時間依所需的檔案大小會不同,下載時,此頁面會顯示下載中的狀態。


  • 下載完成後,映像檔列表中將會看到該映像檔,還沒有完成部署的映像檔,會標示為 “Unused”。




  • 4. 部署 Docker 容器 (Deploy Container)

    Docker 映像檔下載完成後,即可為該映像檔部署 Docker 容器,容器部署成功後即可使用。
    範例:

  • 於 Portainer 左側框架中選擇 [Containers]
  • [Container list] 頁面,點選 [Add container]


  • [Create container] 功能頁面,輸入自定義的容器名稱,及所需的映像檔版本。
  • 建議開啟 [Publish all exposed ports],點選 [Deploy the container]


  • 容器部署成功後,此容器會直接啟動,容器列表 (Container list) 裡會列出此 Docker 環境中所有已部署的容器,使用者可以在此列表中操作不同的容器。


  • Docker 容器完成部署後,可於容器列表中,點選部署時設定的 Ports,該容器將於瀏覽器新分頁中開啟。

    以 Wordpress 為例,點選右側的 [Published Ports],Portainer 將會於瀏覽器新分頁中開啟 Wordpress。

    註:如果 IP 為 0.0.0.0,請參考 [2. 設定本機 Docker] 以設定 Public IP。






    5. 新增其他端點 (Add Endpoint)

    若網域中有其他 NAS 也安裝 Docker,使用者可於 Portainer 中操作另一個 NAS 的 Docker,方式如同操作本機 Docker。

  • 於 Portainer 左側框架中選擇 [Endpoints]
  • [Endpoints] 頁面,點選 [Add endpoint]


  • [Create endpoint] 頁面中,輸入自定義的 Endpoint 名稱及 URL 後,點選 [Add endpoint]


  • 新增完成後,於 Portainer 左側框架中選擇 [Home],可以瀏覽不同 Endpoint 的資訊,點選不同的 Endpoint 則可操作該 Endpoint 的 Docker。




  • 6. 遠端連線 NAS 部署的 Container

    若想遠端連線使用於 ASUSTOR NAS 中部署的 Container,首先您的 ASUSTOR NAS 需先設定可以允許遠端連線,設定方式請參照 [ NAS 221 - 遠端存取- EZ-Connect ] 及 [ NAS 224 - 遠端存取 - 手動連線 ]。Portainer 中的操作,可依下列步驟修改。

  • 於左側框架點選 [Endpoints] 後,選擇 [local]
  • [Endpoint details] 頁面中輸入 NAS WAN IP 或是設定好的網域名稱。 (例如:as6302.myasustor.com)


  • 於左側框架點選 [Images] 後,選擇需開放遠端服務的 Image。
  • [Dockerfile details] 頁面中可以由 [EXPOSE] 此欄位得知此服務的預設 Port。(例如:Nextcloud 預設 Port: 80/tcp)


  • 為避免 NAS 重開機或是 Container 重新啟動,自動對應的 Port 被修改,造成遠端無法連線,因此,需為此 Container 設定固定的 Port。若所需的 Container 已經部署完成,建議將其移除,設定固定 Port 後再部署。

  • 以 Nextcloud 為例,於 [Ports Configuration] 中,將 32680/TCP 對應至此 Container 預設的 80/TCP。


  • 於 ADM 桌面點選 [偏好設定] [手動連線]
  • 選擇 [EZ-Router],點選 [自我定義],新增上述對應給 Nextcloud 的 Port: 32680/TCP。
  • 選擇 TCP,新增上述對應給 Nextcloud 的 Port: 32680。
  • 設定完成後,輸入上述範例的網域名稱及 Port : [http://as6302.myasustor.com:32680],即可遠端連線使用 NAS 部署的 Nextcloud。


  • 這篇文章有幫助嗎? /