Portainer简介
Portainer是Docker的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。
安装Portainer CE版本
Portainer Hub地址
https://hub.docker.com/r/portainer/portainer/
官方安装文档
https://docs.portainer.io/v/ce-2.11/start/install/server/docker/linux
Portainer面板中文汉化
https://github.com/eysp/public
Portainer汉化步骤
#创建镜像挂载目录
mkdir -p /root/portainer/
#下载汉化文件,解压出public文件夹
git clone https://github.com/tbc0309/Portainer-CN2021.git
cd Portainer-CN2021 && unzip Portainer*.zip
#解压public文件夹至/root/portainer目录
mv public /root/portainer/
安装可视化面板
#创建portainer volume
docker volume create portainer_data
#安装portainer
docker run -d -p 8000:8000 -p 9000:9000 -p 9443:9443 \
--name=portainer --restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
-v /root/portainer/public:/public \
--network halongwiz \
portainer/portainer-ce:2.11.1
配置nginx代理
因为之前已经安装过nginx,也预先准备好了二级域名,贴上nginx配置
server {
listen 80;
server_name portainer.findmyfun.xyz;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name portainer.findmyfun.xyz;
...
client_max_body_size 1024m;
location / {
proxy_pass http://portainer:9000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
}
如果没有配置nginx,浏览器直接访问ip:9000,进行初始化配置【需在防火墙放开9000端口限制,配置nginx则不需要】,配置完成就可以打开容器列表,轻松管理你的容器应用了。
结语
Portainer容器列表
Portainer域名访问exec失败解决办法
通过nginx代理访问域名,无法通过exec进入容器控制台而ip:9000可以,究其原因,应该是WebSoket所致。
主要在location内部增加以下两个配置,也就是设置两个HTTP头。
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
参考博客
1、Docker管理面板Portainer中文完美汉化2021 新增CE汉化
2、Docker管理面板Portainer中文版安装
3、Portainer绑定域名后Execute失败
4、https://github.com/portainer/portainer/issues/1887
评论区