人生苦短
一起搞机
justhost
aws
dotdot
recloud
spinservers

Docker可视化容器管理工具Portainer – 让Docker安装与管理更简单

racknerd

很多人不喜欢用Docker的原因是觉得Docker的命令太复杂了,想记又记不住,另外Docker运行和部署还需要考虑容器变量。也有不少的人觉得Docker运行出了错误不好解决,一旦Docker服务器特别多,想要实现统一管理Docker就会变得很麻烦。

为了能够让Docker安装与管理更为方便,于是就有了Docker的可视化管理工具,例如DockerUI、Shipyard、Rancher、Portainer等,今天要说的Portainer,是一款轻量级的图形化管理工具,通过它我们可以轻松管理不同的docker 环境。

Docker可视化容器管理工具Portainer - 让Docker安装与管理更简单

一、安装Docker环境

网站:

  1. https://www.portainer.io

1.1 准备VPS主机

Docker需要VPS运行,现在的VPS主机基本上也是白菜价了,有关于VPS主机评测查看:https://www.laoliublog.cn/vpsceping

1.2 Docker环境

有了VPS主机,现在你就可以需要在VPS主机上配置好Docker环境,这里有一个一键安装Docker环境的命令,配置起来非常地简单。

bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)
Portainer安装Docker环境

二、安装Portainer

首先,创建用于持久化存储 Portainer Server 数据的目录:

mkdir -p /opt/docker/portainer/data

然后,下载并安装社区版 Portainer Server 容器:

docker run -d \
  --name portainer \
  --restart=always \
  -e TZ=Asia/Shanghai `# 容器内部时区(可选参数)` \
  -p 8000:8000 \
  -p 9000:9000        `# HTTP 访问端口,例如要改为通过 8080 端口访问,就修改为8080:9000`\
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /opt/docker/portainer/data:/data `# 数据持久化目录` \
  portainer/portainer-ce:latest

Portainer Server 现已安装完毕。您可以通过运行检查 Portainer Server 容器是否已启动 docker ps

Portainer开始运行

三、Portainer使用

现在你可以打开:IP:9000登录到您的 Portainer Server 实例,如果您修改了默认的 HTTP 访问端口,请不要忘记将 9000 替换为您自定义的端口:初次进入Portainer,你需要设置新密码。如果提示时间过期,你可以使用以下命令重启Docker后再次进入:sudo docker restart portainer

Portainer开始登录

3.1 进入管理面板

打开Portainer面板,点击进入到Docker管理中心。

Portainer进入面板

这里我们选择本地Docker管理。以下就是Portainer的Docker管理中心。(点击放大)

Portainer本地管理

3.2 在线管理镜像

在Portainer中,你可以查看你的服务器上已经运行的Docker容器。

Portainer在线容器管理
Portainer在线查看

你可以对Docker进行重启、关机、重建、复制等。

Portainer关闭重建

你可以查看Docker运行日志。

Portainer运行日志

3.3 部署容器镜像

Portainer的APP模板里已经自带了非常多的热门容器镜像。

Portainer模板

你可以直接选择一个点击就可以部署上线了。

Portainer部署上线

或者,我们直接创建容器。

Portainer手动创建容器
Portainer查看日志

填入Docker镜像地址,其它的环境变量你可以根据你自己的需要来设置。(点击放大)

Portainer镜像设置

3.4 部署Docker Compose

喜欢用Docker Compose的朋友,你可以点击创建Stacks。

Portainer Docker Compose设置

接下来就是填入Docker Compose内容,这里我们以创建Plex容器为演示:

Portainer Docker Compose设置命令

创建Plex存储目录。

mkdir -p /opt/docker/plex/config # Plex 配置文件目录
mkdir -p /opt/docker/plex/transcode # Plex 转码文件目录
mkdir -p /opt/docker/plex/data # Plex 数据文件目录

复制以下代码到Portainer中。

version: '3'
services:
 plex:
   image: plexinc/pms-docker:latest                  # latest 安装最新的版本
   hostname: PlexServer                              # 自定义主机名称
   restart: always                                   # 设置重启策略
   volumes:
     - /opt/docker/plex/config:/config          # Plex 配置文件目录
     - /opt/docker/plex/transcode:/transcode    # Plex 转码文件目录
     - /opt/docker/plex/data:/data             # Plex 数据文件目录
     - /opt/docker/plex:/video                # 视频文件存储目录
   ports:
     - 32400:32400/tcp                               # Plex 网页访问端口,例如要改为通过 8080 端口访问,就修改为8080:32400
     - 3005:3005/tcp                                 # Plex Companion
     - 8324:8324/tcp                                 # controlling Plex for Roku via Plex Companion
     - 32469:32469/tcp                               # access to the Plex DLNA Server
     - 32468:1900/udp                                # access to the Plex DLNA Server
     - 32410:32410/udp                               # current GDM network discovery
     - 32412:32412/udp                               # current GDM network discovery
     - 32413:32413/udp                               # current GDM network discovery
     - 32414:32414/udp                               # current GDM network discovery
   # devices:                                        # Share hardware devices with FFmpeg (optional)
     #  - "/dev/dri:/dev/dri"                        # Intel QSV
     #  - "/dev/nvidia0:/dev/nvidia0"                # Nvidia CUDA
     #  - "/dev/nvidiactl:/dev/nvidiactl"
     #  - "/dev/nvidia-modeset:/dev/nvidia-modeset"
     #  - "/dev/nvidia-nvswitchctl:/dev/nvidia-nvswitchctl"
     #  - "/dev/nvidia-uvm:/dev/nvidia-uvm"
     #  - "/dev/nvidia-uvm-tools:/dev/nvidia-uvm-tools"
     #  - "/dev/video11:/dev/video11"                # Raspberry V4L2
   environment:
     TZ: Asia/Shanghai                               # 容器内部时区
     PLEX_UID: 0                                     # 在容器内创建的用户 ID(不懂勿改)
     PLEX_GID: 0                                     # 在容器内创建的用户组 ID(不懂勿改)
     PLEX_CLAIM: claim-RDeC1j2FgP8BWXfzxrsF          # 真实服务器的声明令牌,您可以通过访问 https://www.plex.tv/claim 获取声明令牌以将您的服务器登录到您的 Plex 帐户
     ADVERTISE_IP: 209.209.10.150:32400/              # 填写外部访问的固定 IP 或域名,没有的话可以删除此行

最后点击部署Stacks中。

Portainer Docker Compose部署节点

稍等一会儿,我们就可以看到Portainer已经成功部署容器了。

Portainer Docker Compose管理节点

同时,我们在容器中也可以看到上线运行的镜像了。

Portainer Docker Compose查看镜像

接下来我们就可以对Plex进行设置了。

Portainer Docker Compose上线运行

四、总结

Portainer管理Docker让Docker容器安装与部署越为简单,尤其对于不喜欢用命令式的Docker管理方式来说,Portainer可以提升Docker的使用体验。

原文链接:https://wzfou.com/portainer/

未经允许不得转载:老刘测评 » Docker可视化容器管理工具Portainer – 让Docker安装与管理更简单