今天,小九给大家推荐一个好用的docker可视化界面~
Portainer是一个可视化的Docker操作界面,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。
下面,小九将从登录、部署,再到实践,全方位地介绍Portainer。
登录 Portainer
如果你部署了包含 Portainer 的Docker环境,请直接登录使用。否则,请先安装 Portainer:
#通过命令安装 Portainer docker volume create portainer_data docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer cd /usr/libexec/docker/ sudo ln -s docker-runc-current docker-runc
部署MySQL容器
下面详细介绍通过 Portainer 部署MySQL:
部署WordPress容器
下面详细介绍通过 Portainer 部署WordPress以及使用上一步的MySQL作为数据存储:
进阶实战:Nginx 容器实现端口转发
以上一章节中的 WordPress 网站作为示例,在 WordPress 部署完成后,需要在浏览器内输入 http://公网IP地址:端口 的形式访问网站,但我们不加端口就能访问域名,所以这时就要用到 Nginx 的端口转发功能。
要实现这个需求,有三个部署:部署Nginx容器,部署 FileBrowser 容器,
下面详细介绍通过 Portainer 部署 Nginx:
修改完 Nginx 的配置文件后,File Browser 容器可选择继续保留使用或删除。
进阶实战:Portainer 设置 HTTPS
3.修改 Nginx 的配置文件,注意将 IP 和域名改成自己的服务器 IP 和域名;
upstream portainer { server 159.138.6.145:9000; } server { listen 80; listen 443 ssl; server_name test.websoft9.top; ssl_certificate /etc/nginx/cert/cert-1540972394298_test.websoft9.top.crt; ssl_certificate_key /etc/nginx/cert/cert-1540972394298_test.websoft9.top.key; location / { proxy_pass http://portainer; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Via "nginx"; } }
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SqeEZnqF-1629853822243)(http://libs.websoft9.com/Websoft9/DocsPicture/zh/potainer/portainer-ssl-2-websoft9.png)]
[warning] 如果证书路径和图中不同,请将图中证书路径改为自己的证书所在路径,并将证书名改为自己的证书名。
在此以连接到 MySQL 容器为例进行说明:
到 Portainer 的容器列表里面查看 portainer 的 volume 对应的服务器目录,在/var/lib/docker/volumes
下可找到 volume 对应的目录名,将其备份即可。
只需运行 docker pull portainer
就可以将 Portainer 升级到最新版本。
常见问题
建议开启【Publish all exposed network ports…】 以保证容器中的服务可以自动匹配服务器端口被外界访问。如果不开启,需自行到DockerHub (opens new window)网站查看端口。
容器端口需要通过服务器端口做映射,才可以被互联网用户访问。
原文链接:https://blog.csdn.net/weixin_42660856/article/details/119903396