本文距离上次更新已过去 0 天,部分内容可能已经过时,请注意甄别。
Portainer 是一款免费、开源的 Docker 的图形化管理工具,其能够提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm 集群和服务等集中管理和操作、登录用户管理和控制等功能。
安装 Docker 更新、安装必备软件 1 apt-get update && apt-get install -y wget vim
Docker 安装 1 2 3 wget -qO- get.docker.com | bash curl -sSL get.docker.com | sh
查看 Docker 版本
开机自动启动
卸载 Docker 1 sudo apt-get purge docker-ce docker-ce-cli containerd.io
1 2 sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd
Docker-compose 安装 1 2 3 curl -L "https://github.com/docker/compose/releases/download/v2.11.2/docker-compose-$(uname -s) -$(uname -m) " -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-composedocker-compose --version
Docker 基本命令 1 2 3 4 5 6 docker ps -a docker stop <CONTAINER ID> docker start <CONTAINER ID> docker rm <CONTAINER ID> docker images docker rmi <IMAGE ID>
修改 Docker 配置 限制日志文件大小,防止 Docker 日志塞满硬盘
1 2 3 4 5 6 7 8 9 cat > /etc/docker/daemon.json <<EOF { "log-driver": "json-file", "log-opts": { "max-size": "20m", "max-file": "3" } } EOF
然后重启 Docker 服务
1 systemctl restart docker
安装 Portainer 查看镜像
拉取镜像 1 docker pull portainer/portainer
启动 Portainer 1 2 3 4 5 6 7 docker run --name portainer --restart=always --privileged=true \ -p 8000:8000 \ -p 9000:9000 \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /root/data/docker/portainer/data/:/data \ -v /root/data/docker/portainer/public/:/public \ -d portainer/portainer-ce:latest
-p 参数映射容器端口到本地 [服务器端口 : 容器内部端口] -v 参数持久化容器目录到本地 [服务器路径 : 容器内部路径] 9000 端口为 web 管理界面端口,浏览器访问运行Portainer的Docker引擎的端口9000 -v /var/run/docker.sock:/var/run/docker.sock 默认配置 portainer 所在服务器 Docker 端点 该语句用宿主机 9000 端口关联容器中的 9000 端口,并给容器起名为 portainer。执行完该命令之后,使用该机器 IP:PORT 即可访问 Portainer
在 Portainer 添加其他服务器 Docker 节点
在需要添加到 Portainer 的服务器中安装 Docker
安装完成 Docker 后,修改 vim /usr/lib/systemd/system/docker.service 暴露 docker api 接口
1 2 3 4 5 systemctl status docker.service nano /lib/systemd/system/docker.service
修改配置项ExecStart中的值为:
1 ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H fd:// --containerd=/run/containerd/containerd.sock
重启 Docker 服务
1 2 3 4 5 systemctl daemon-reload systemctl restart docker
在 Portainer 所在服务器测试是否可连接目标服务器 Docker Api
1 2 3 4 5 6 7 8 docker -H 0.0.0.0:2375 info WARNING: API is accessible on http://0.0.0.0:2375 without encryption. Access to the remote API is equivalent to root access on the host. Refer to the 'Docker daemon attack surface' section in the documentation for more information: https://docs.docker.com/engine/security/security/
完成以上内容后即可在 Portainer 的 “端点/EndPoint” 菜单中点击 “添加端点/Add EndPoint”, 来添加目标服务器 Docker节点