【版本】
当前版本号v20241202
版本 | 修改说明 |
---|---|
v20241202 | 新增提示消息 |
v20230827 | 初始化版本 |
任务7 使用 Portainer 管理 Docker
【任务目的】
- 掌握 Docker 镜像的导入
- 掌握 Docker 容器
【任务环境】
- VirtualBox
- FinalShell
【任务资源】
- Portainer简介
- 1.Portainer 本意是码头集装箱起重机,是一个轻量级 Docker 管理界面应用,可让我们轻松管理Docker主机或Swarm集群。
- 2.提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面.
- 3.基本能满足中小型单位对容器管理的全部需求。
- 4.Portainer的部署和使用都非常简单,它由一个可以在任何Docker引擎上运行的容器组成(支持Docker for Linux和Docker for Windows)。
- 5.Portainer consists of two elements, the Portainer Server, and the Portainer Agent.
- 6.By default, Portainer Server will expose the UI over port 9443
- 7.SELinux is disabled on the machine running Docker. I
- 8.Docker is running as root
- 9.create the volume that Portainer Server will use to store its database
【任务步骤】
拉取镜像
- 搜索portainer镜像
docker search portainer
- 正常情况下可以看到以下内容(结果太多,省略了部分显示结果)
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
portainer/portainer This Repo is now deprecated, use portainer/p… 2441
portainer/portainer-ce Portainer CE - a lightweight service deliver… 1953
portainer/agent An agent used to manage all the resources in… 215
portainer/portainer-ee Portainer BE - a fully featured service deli… 79
因为docker搜索功能被防火墙屏蔽,可能会出现以下错误,如果此步骤无法得到正常搜索结果可以跳过。
Error response from daemon: Get "https://index.docker.io/v1/search?q=portainer&n=25": dial tcp 108.160.167.148:443: i/o timeout
- 拉portainer/portainer-ce镜像的最新稳定版本到本地。
docker pull portainer/portainer-ce
portainer/portainer已不推荐(已经停止更新),学习和个人使用推荐使用portainer/portainer-ce(开源社区版本),对应的企业版本是portainer-ee(商业版,提供企业级管理解决方案)。
- 如果成功可以看到以下信息
Using default tag: latest
latest: Pulling from portainer/portainer-ce
Digest: sha256:94c3056dbe879f3a3df06b427713392a0962924914f5c2fc557de3797f59f926
Status: Image is up to date for portainer/portainer-ce:latest
docker.io/portainer/portainer-ce:latest
创建卷
- 创建一个卷(volumn)用于存储Portainer Server 的数据库数据。
docker volume create portainer_data
Docker Volume能让容器从宿主主机中读取文件或持久化数据到宿主主机内,让容器与容器产生的数据分离开来。你可以简单地把它理解为linux服务器上的挂载点。
- 查看创建的卷。
docker volume ls
- 正常会出现类似以下信息
DRIVER VOLUME NAME
local portainer_data
启动容器
- 启动 Portainer 容器。
docker run -d --restart=always -p 8000:8000 -p 9443:9443 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
注意:默认情况下Portainer 会启用8000、9000、9443 三个端口。其中9443端口是使用了自签名的SSL证书加密访问。9000端口则是没有加密。 如果你想该容器在重启 docker run -d –restart=always <image_name> 其中,-d 参数表示在后台运行容器,–restart=always 参数表示在容器退出时自动重启容器。例如,如果您想运行名为 my_image 的镜像并将其放在后台运行。如果你想停止该容器并让该容器在寄主机重启后不会自动重启,使用docker stop <container_ID/container_name>。
- 查看 Portainer 映射的端口。
docker port portainer
- 正常情况下会显示以下端口映射结果
8000/tcp -> 0.0.0.0:8000
8000/tcp -> [::]:8000
9443/tcp -> 0.0.0.0:9443
9443/tcp -> [::]:9443
- 查看容器运行状态。
docker ps
- 运行结果
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4e1664ef0a0f portainer/portainer-ce:latest "/portainer" 3 minutes ago Up 3 minutes 0.0.0.0:8000->8000/tcp, :::8000->8000/tcp, 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp, 0.0.0.0:9443->9443/tcp, :::9443->9443/tcp portainer
- 可以通过 http/https 两种方式访问。
登录 Portainer 管理 Docker
- 输入以下管理员帐号和密码,点击"Create user"创建管理员。
Username:admin
Password: 123456789012
Confirm password: 123456789012
第1次输入密码的字符数不能小于12个字符,登陆后可以改动
登录以后能看到 Portainer 的WEB界面了。进入本地管理界面对镜像。
请利用 Portainer 的 Web 管理界面实现 任务Part6 的功能,请同学们自己完成,并记录后续的任务步骤。
【常见问题】
1. 错误提示“Your Portainer instance timed out for security purposes.”
- 提示细节:
New Portainer installation Your Portainer instance timed out for security purposes. To re-enable your Portainer instance, you will need to restart Portainer.
For further information, view our documentation.
解决办法:
- (1)重启portainer容器
docker restart portainer
- (2)回到"设置管理员帐号和密码",在一分钟内完成admin帐户的创建