快速入门
Portainer 是一个可视化的 Docker 操作界面,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。
部署 Websoft9 提供的 Portainer 之后,请参考下面的步骤快速入门。
准备
- 在云控制台获取您的 服务器公网IP地址
- 在云控制台安全组中,确保 Inbound(入)规则 下的 TCP:80 端口已经开启
- 若想用域名访问 Portainer,务必先完成 域名五步设置 过程
Portainer 初始化向导
详细步骤
-
使用 SSH 连接服务器,运行下面的命令,查看 Docker 的安装信息和运行状态
sudo docker info
sudo systemctl status docker运行服务状态查询命令,Docker 正常运行会得到 " Active: active (running)... " 的反馈
-
通过本地浏览器访问:
<http://服务器公网IP>
直接进入 Portainer 界面
Portainer官方容器启动后,如果不设置初始密码,超过5分钟会提示超时,需要执行
sudo docker restart portainer
-
自行设置管理员账号密码,点击【Create user】
-
选择【Local】作为镜像连接选项,然后点击【Connect】
-
进入Portainer后台管理界面,点击Local项目就可以开始使用Portainer
-
通过 Portainer 查看运行容器,你会发现 Portainer 本身也是运行在容器中的
需要了解更多 Docker 的使用,请参考官方文档:Docker Documentation
出现问题?
若碰到问题,请第一时刻联系 技术支持。也可以先参考下面列出的问题定位或 FAQ 尝试快速解决问题:
Portainer 使用入门
下面以部署一个 WordPress 网站为场景,描述 Portainer 的使用:
部署 MySQL 容器
下面详细介绍通过 Portainer 部署MySQL:
-
登录 Portainer ,打开【Containers】>【Add container】
-
设置容器运行所需的参数(下面示图并描述重点设置部分)
- Name 为自定义的容器名称
- Image 为容器镜像名称,例如"mysql:5.6" 系统会自动到DockerHub中拉取MySQL5.6
- Network ports configuration:建议开启【Publish all exposed network ports...】 以保证容器中的服务可以通过服务器端口被外界访问。如果不开启,需手工建立准确的映射关系(难度系数有点高)。
- Env 环境变量设置:添加如所示的容器环境变量,对于MySQL镜像来说,数据库 root 密码MySQL_ROOT_PASSWORD 为必填变量,其他更多可选变量查看 MySQL镜像说明
- Restart policy:建议选择【Always】,使得容器无论在什么情况下停止总会自动重新启动;
-
点击 Deploy the container 创建容器;
-
如果服务器安全组的 3306 端口已经开放,现在就可以在本地通过远程连接 MySQL 数据库
部署 WordPress 容器
下面详细介绍通过 Portainer 部署 WordPress 以及使用上一步的 MySQL 作为数据存储:
-
登录 Portainer ,打开【Containers】>【Add container】
-
设置容器运行所需的参数(下面示图并描述重点设置部分)
- Name 为自定义的容器名称
- Image 为容器镜像名称,例如"wordpress" 系统会自动到DockerHub中拉取WordPress
- Network ports configuration:建议开启【Publish all exposed network ports...】 以保证容器中的服务可以自动匹配服务器端口被外界访问。如果不开启,需手工建立准确的映射关系(难度系数有点高)。
- Restart policy:建议选择【Always】,使得容器无论在什么情况下停止总会自动重新启动;
-
点击 Deploy the container 创建容器,创建成功后查看映射的服务器端口号;
-
本地浏览器访问:
http://服务器公网IP:端口
即可访问 WordPress 的初始化安装界面 -
此处如果你打算使用MySQL容器,数据库主机地址填写的是 服务器公网IP:端口
-
数据库验证通过后,系统提示正式“进行安装”
Nginx 容器绑定域名
以上一章节中的 Wordpress 网站作为示例,在 WordPress 部署完成后,需要在浏览器内输入 <http://公网IP地址:端口>
的形式访问网站,但我们不加端口就能访问域名,所以这时就要用到 Nginx 的端口转发功能。
我们使用使用一款可视化的 Nginx 管理器:Nginx Proxy Manager
FileBrowser 容器管理文件
- 进入到 Portainer 页面,选择左边的 App Templates 选项,往下找到 File browser 容器模板,单击选择;
- 按照下图创建 File browser 容器;
- 进入到容器列表,单击刚刚创建的 File browser 容器,点击 Duplicate/Edit 按钮,进入到修改容器信息页面;
- 按照下图,将 File browser 的 volume 值修改为 和 Nginx 的 volume 值相同;
Portainer 常用操作
运行容器命令
在此以连接到 MySQL 容器为例进行说明:
- 返回到容器列表,点击下图中 MySQL 的 Quick actions 一栏下的 >_ 图标;
- 在新打开的页面,点击 Connetc 按钮,连接到容器;
- 接下来就可以在命令窗口中输入
mysql -uroot -ppassword;"
,其中 “password” 为您在自己设置的数据库密码,这样就可以开始使用数据库命令对 MySQL 进行管理了;
参数
Portainer 应用中包含 Docker, Portainer 等组件,可通过 通用参数表 查看路径、服务、端口等参数。
通过运行 docker ps
,查看 Portainer 运行时所有的服务组件:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c47fe38db3bf portainer/portainer-ce:latest "/portainer" 2 months ago Up 13 days 8000/tcp, 9443/tcp, 0.0.0.0:9091->9000/tcp, :::9091->9000/tcp portainer
路径
Portainer 数据目录:/data/apps/portainer/data/portainer
端口
除 80, 443 等常见端口需开启之外,以下端口可能会用到:
端口号 | 用途 | 必要性 |
---|---|---|
9091 | 通过 HTTP 访问 Portainer | 可选 |
版本
curl https://github.com/portainer/portainer/releases |grep Release |grep tag |head -1 |cut -d/ -f6 |cut -c 1-6
服务
sudo docker start | restart | stop | stats portainer