Docker Compose UI:用Portainer告别命令行,新手也能轻松管理容器
一、为什么选Portainer?新手也能放心用
市面上Docker可视化工具不少,但Portainer能成为主流,核心就是“好用不复杂”,优势特别贴合新手和日常使用场景:
- 完全免费:社区版功能无阉割,日常管理容器、Docker Compose项目足够用,不用花一分钱;
- 操作极简:界面像普通软件一样直观,不用记命令,所有操作都能通过点击完成,上手无门槛;
- 功能全面:不仅能管Docker Compose项目,还能管理容器、镜像、数据卷、网络,从部署到监控一站式搞定;
- 轻量稳定:镜像体积小,占用服务器资源少,支持“异常自动重启”,部署后不用频繁维护,适合个人和小型生产环境。
二、手把手部署Portainer(两步到位,复制即用)
Portainer本身也是一个容器,我们用Docker Compose一键部署,步骤简单,全程复制代码就行,不用手动配置复杂环境。
第一步:准备配置文件
先在服务器上建一个专门的文件夹(用来放Portainer的配置文件,避免混乱),操作如下:
- 打开服务器终端,输入命令创建文件夹并进入(文件夹名建议用portainer,好记): # 创建文件夹 mkdir -p /home/portainer # 进入文件夹(后续操作都在这个目录里做) cd /home/portainer
- 在这个文件夹里创建一个名为docker-compose.yml的配置文件,内容直接复制下面的(关键配置已加通俗注释,看不懂也能放心用): version: '3.8' # 定义要启动的服务(这里只需要Portainer一个服务) services: portainer: # 使用Portainer社区版镜像(免费版,放心用) image: portainer/portainer-ce:latest # 给容器起个名字,方便后续识别(就叫portainer) container_name: portainer # 核心设置:服务器重启、容器异常退出时,自动重启Portainer restart: always # 端口映射:把容器的端口暴露给服务器,方便浏览器访问 ports: - "9000:9000" # 核心访问端口,浏览器靠这个端口打开界面(必选) - "8000:8000" # 边缘节点通信端口(新手用不上,保留不影响,也能直接删掉这行) # 数据挂载:让Portainer能控制Docker,同时保存配置(缺一不可) volumes: # 给Portainer开权限,让它能操控服务器上的Docker(核心挂载) - /var/run/docker.sock:/var/run/docker.sock # 保存Portainer的配置(比如管理员账号、项目设置),重启后不丢失 - portainer_data:/data # 声明数据卷,专门用来存Portainer的配置数据(自动创建,不用手动管) volumes: portainer_data:
第二步:启动Portainer容器
配置文件做好后,只需要敲一行命令,就能让Portainer在后台运行:
docker-compose up -d 命令解释:up表示启动服务,-d表示“后台运行”,执行后终端不会被占用,还能继续做其他操作。✅ 验证是否启动成功:输入docker-compose ps,如果看到“状态”列显示Up,就说明Portainer已经正常启动了。
三、首次访问Portainer:3步完成初始化
启动后,我们通过浏览器访问Portainer界面,做简单初始化就能用了,全程不用碰命令行。
- 打开浏览器访问:在本地电脑浏览器输入http://你的服务器IP:9000(比如服务器IP是192.168.1.100,就输http://192.168.1.100:9000);如果是在本地电脑部署,直接输http://localhost:9000。
- 创建管理员账号:首次访问会让你设置用户名和密码(密码必须至少8位,建议设一个好记又安全的),设置完点击“Create user”。
- 连接本地Docker环境:接下来会让你选择要管理的Docker环境,我们选“Local”(管理当前服务器的Docker),然后点击“Connect”,就能进入Portainer主界面了。
小贴士:如果打不开界面,先检查服务器防火墙是否开放了9000端口,再用docker-compose ps确认Portainer容器是否在运行。
四、核心操作:用Portainer可视化管理Docker Compose项目
Portainer里把Docker Compose项目叫做“Stacks(堆栈)”,不管是部署新项目、启停容器,还是查看日志,都能通过界面点击完成,下面分场景详细说。
场景1:部署Docker Compose项目(两种方式,按需选)
如果你已经有现成的docker-compose.yml文件,或者想在线写配置,都能快速部署。
方式1:上传现成的Compose文件(推荐,适合有现成配置的情况)
- 进入Portainer主界面,点击左侧菜单栏的「Stacks」;
- 点击页面右上角的「Add stack」(添加堆栈);
- 给项目起个名字(比如“my-web-app”,随便起,只要能区分就行);
- 找到“Compose file”区域,点击「Upload file」,选择本地电脑里的docker-compose.yml文件;
- 不用改其他设置,直接点击页面底部的「Deploy the stack」,等待几秒就能完成部署。
✅ 部署成功后,会自动跳转到项目详情页,能看到所有容器的运行状态。
方式2:在线编写Compose配置(适合没有现成文件,想直接调试的情况)
- 同样进入「Stacks」→「Add stack」,输入项目名称;
- 在“Compose file”的编辑框里直接写YAML配置(Portainer会自动语法高亮,写错了会提示,避免踩坑);
- 写完后点击「Deploy the stack」,直接部署项目。
场景2:日常管理操作(全可视化,不用记命令)
部署完项目后,后续的启停、修改配置、查看日志等操作,都在「Stacks」列表里完成,对应操作路径整理好了,直接对照做就行:
想要做的操作 | 具体操作路径 | 补充说明 |
|---|---|---|
启动/停止/重启项目 | Stacks列表 → 找到对应项目 → 点击右侧「Actions」→ 选「Start/Stop/Restart」 | 停止项目后,容器不会删除,重启后能恢复运行 |
删除整个项目 | Stacks列表 → 对应项目 → 「Actions」→「Delete」 | 会删除项目下所有容器、网络,建议先备份数据 |
查看容器日志 | Stacks列表 → 点击项目名称进入详情 → 点击要查看的容器名称 → 选「Logs」 | 支持实时刷新日志,还能筛选时间、下载日志 |
修改Compose配置 | Stacks列表 → 对应项目 → 「Actions」→「Edit」→ 修改配置 → 点击「Update the stack」 | 修改后会自动重启项目,应用新配置 |
进入容器终端 | Stacks详情 → 容器名称 →「Console」→ 选择「/bin/bash」或「/bin/sh」→「Connect」 | 相当于命令行的 docker exec -it 容器名 bash,不用敲命令 |
监控资源使用 | 左侧菜单栏「Containers」→ 查看对应容器的CPU、内存、网络占用 | 直观看到容器资源消耗,方便排查卡顿问题 |
五、新手必看:避坑小贴士+优化建议
1. 端口冲突怎么解决?
如果启动Portainer时提示“端口被占用”,说明9000端口已经被其他程序用了。修改docker-compose.yml里的端口映射,把9000:9000改成9001:9000(前面的9001可以换成其他没被占用的端口),再重新执行docker-compose up -d,之后用新端口访问即可。
2. 如何升级Portainer到最新版?
进入Portainer部署目录(就是之前的/home/portainer),执行以下命令,一键升级:
docker-compose pull && docker-compose up -d 命令解释:pull表示拉取最新版镜像,后面的命令表示重启容器,升级后配置不会丢失。
3. 安全加固建议(生产环境必做)
- 给Portainer配置SSL证书:进入Portainer主界面 → 左侧「Settings」→「SSL Certificate」,上传SSL证书,让访问地址从http变成https,更安全;
- 限制端口访问:通过服务器防火墙,只允许自己的IP访问9000端口,避免他人尝试登录;
- 定期备份配置:Portainer的配置存在portainer_data数据卷里,可通过命令导出备份,避免配置丢失。
4. 数据卷备份命令(新手可直接复制)
# 把Portainer配置备份到/home/backup目录下,命名为portainer_backup.tar
docker run --rm -v portainer_data:/source -v /home/backup:/target alpine tar -czvf /target/portainer_backup.tar -C /source .六、备选工具:极简版Docker Compose UI
如果你的需求特别简单,只需要管理Docker Compose项目,不需要镜像、网络管理等功能,可以试试docker-compose-ui(轻量但维护较少,功能单一),部署命令如下:
docker run -d -p 8080:8080 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v compose-ui-data:/data \
francescou/docker-compose-ui 部署后访问http://服务器IP:8080即可使用,适合追求极致简洁的场景,但长远来看,还是Portainer更稳定、功能更全。
总结:用Portainer,彻底和命令行说再见
对于新手和日常使用来说,Portainer是Docker Compose可视化管理的最优解,核心优势就是“简单、好用、全功能”:
- 部署简单:只需要一个配置文件+一行命令,几分钟就能搞定;
- 操作直观:所有管理动作都能通过鼠标点击完成,不用记任何命令;
- 功能够用:从部署项目到监控资源,覆盖日常容器管理的所有需求。
记住两个核心要点:部署时必须挂载/var/run/docker.sock(让Portainer能控制Docker)和数据卷(保存配置),后续就能无忧无虑地用可视化界面管理所有容器了。
版权所属:SO JSON在线解析
原文地址:https://www.sojson.com/blog/570.html
转载时必须以链接形式注明原始出处及本声明。
如果本文对你有帮助,那么请你赞助我,让我更有激情的写下去,帮助更多的人。
