1、下载二进制文件:
curl -L https://github.com/docker/compose/releases/download/v2.17.1/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
2、 授权执行权限:
chmod +x /usr/local/bin/docker-compose
3、查看版本:
docker-compose --version
4、自定义网络
docker network create myj_network --driver bridge
5、使用案例:
docker-compose.yml
version: '2' #指定docker-compose版本号【版本有 v1、v2、v3 版本】
services:
adminweb: #定义服务,可以包含多个服务
# depends_on: #指定容器之间的依赖关系,需要在其他容器启动后才能启动
image: nginx:latest #指定使用的镜像
# labels: #容器的标签,可以用于搜索和过滤
# myj: frontend
# command: "date" #指定容器启动时执行的命令
deploy:
replicas: 1
resources: #指定服务容器的资源限制和约束
limits:
cpus: '0.5'
memory: 256M
container_name: nginx #指定容器的名称
hostname: #容器内部hostname
restart: always #容器启动失败时的重启策略,包括no、always、on-failure等选项
ports:
- 8082:80 #指定容器的端口映射,将容器内部的80端口映射到主机上的8082端口
depends_on: #如果2个服务有依赖关系,先启动被依赖的服务 prometheus-1
- prometheus-1
networks:
myj_network: #指定容器连接的网络,可以是已有的网络或新建的网络
# ipv4_address: 172.20.0.2 # 指定容器ip
environment:
TZ: Asia/Shanghai #环境变量
volumes: #挂载目录,将主机上的目录挂载到容器内部
- ./nginx.conf:/etc/nginx/nginx.conf
networks:
myj_network: #指定容器连接的网络,可以是已有的网络或新建的网络
driver: bridge
external: true #使用外部网络
ipam:
driver: default
config: # 指定容器网段
- subnet: 172.16.0.0/16
gateway: 172.16.0.1
6.常用操作命令:
1. docker-compose -f docker-compose.yml up -d #创建并启动容器,同时在后台运行
2. docker-compose -f docker-compose.yml ps # 列出所有正在运行的容器
3.docker-compose -f docker-compose.yml start # 启动已经创建的容器
4. docker-compose -f docker-compose.yml stop #停止已经创建的容器
5. docker-compose -f docker-compose.yml restart #重启容器
6. docker-compose -f docker-compose.yml top #查看容器中正在运行的进程
7. docker-compose -f docker-compose.yml kill # 强制停止容器中的所有进程
8. docker-compose -f docker-compose.yml config #检查 Compose 文件的格式是否正确
9.docker-compose -f docker-compose.yml logs #查看容器的日志信息
10.docker-compose -f docker-compose.yml ls #列出正在运行的服务
11. docker-compose -f docker-compose.yml pause #暂停容器中的所有进程
12. docker-compose -f docker-compose.yml unpause #恢复容器中的所有进程
13.docker-compose -f /root/docker-compose.yml down #停止并删除容器
14. docker network create -d bridge --subnet 172.20.0.0/16 --gateway 172.20.0.1 myj_network # 创建 docker 网络,指定 网段和网关
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)