我们使用 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. 远程访问已部署的容器





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 帐户。
  • 建立 admin 帐户后,即可使用 Portainer。用户可于左侧框架 [Users] 中,修改密码。





2. 设置本机 Docker

初次执行 Portainer,先设置本机 Docker 环境,即可在 NAS 上使用 Portainer 基本功能。

  • 于初始画面中,选择 [Local],点选 [Connect]


  • 于左侧框架点选 [Endpoints] 后,选择 [local]
  • [Endpoint details] 页面中输入 NAS Public IP,这是 Docker 启动容器的默认IP。




  • 3. 获取 Docker 镜像 (Pull Images)

    3.1 在 dockerhub 上搜寻

    Portainer 会使用 dockerhub 来获取镜像,因此,需先在 dockerhub 上搜寻所需镜像的正确路径及名称。相同功能或名称的镜像可能会有不同开发者上传不同版本,输入正确的路径及名称才能获取正确的版本。
    範例: [dockerhub]

  • 于 dockerhub 搜寻 “phpmyadmin”,较热门的版本会排在前面,点选所需的项目,进入该容器的页面。


  • 于 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. 远程访问已部署的容器

    若想远程访问使用于 ASUSTOR NAS 中部署的容器,首先您的 ASUSTOR NAS 需先设置可以允许远程访问,设置方式请参照 [ NAS 221 - 远程访问- EZ-Connect ] 及 [ NAS 224 - 远程访问 - 手动联机 ]。Portainer 中的操作,可依下列步骤修改。

  • 于左侧框架点选 [Endpoints] 后,选择 [local]
  • [Endpoint details] 页面中输入 NAS WAN IP 或是设置好的域名。 (例如:as6302.myasustor.com)


  • 于左侧框架点选 [Images] 后,选择需开放远程访问的镜像。
  • [Dockerfile details] 页面中可由 [EXPOSE] 此栏位得知此服务的默认通讯端口。 (例如: Nextcloud 默认通讯端口为 80/tcp)


  • 为避免 NAS 重启或是容器重启后,自动对应的通讯端口被修改,造成远程访问失败,因此,必须为此容器分配固定通讯端口。如果所需的容器已经部署完成,建议将其删除,设置固定通讯端口后再部署。

  • 以 Nextcloud 为例,于 [Ports Configuration] 中,将 32680/TCP 配置给此容器的默认通讯端口 80/TCP。


  • 于 ADM 桌面点选 [偏好设定] [手动联机]
  • 选择 [EZ-Router],点选 [自我定义],新增上述配置给 Nextcloud 的通讯端口:32680/TCP。
  • 选择 TCP ,新增配置给 Nextcloud 的通讯端口:32680。
  • 設置完成後,輸入上述範例域名及通訊端口: [http://as6302.myasustor.com:32680],即可遠程訪問使用 NAS部署的 Nextcloud。


  • 此文章有帮助吗? /