1、部署安装
1 | sudo curl -L "https://get.daocloud.io/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose |
2、授权
1 | chmod +x /usr/local/bin/docker-compose |
3、构建简单的Nginx服务.yml文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | [root@docker ~]# mkdir compose [root@docker ~]# cd compose/ [root@docker compose]# vim docker-compose.yml #编写.yml文件,写入以下内容 version: "3" #指定语法的格式的版本 services: #定义服务 nginx: #服务的名称 container_name: web-nginx #容器的名称 image: nginx:latest #所使用的镜像 restart: always #随docker服务的启动而启动 ports: - 80:80 #映射的端口 volumes: - /root/compose/webserver:/usr/share/nginx/html #本地与容器挂载的目录 //编写文件注意缩进 [root@docker compose]# docker-compose up -d //使用当前目录下的docker-compose.yml文件生成相应的容器 //“-d”选项,表示后台运行,如果不指定,默认则在前台运行,会占用终端 [root@docker compose]# docker ps //查看运行的容器 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES bbd9513cd918 nginx:latest "/docker-entrypoint.â¦" 4 minutes ago Up 4 minutes 0.0.0.0:80->80/tcp web-nginx [root@docker compose]# echo "hello world" > webserver/index.html //创建测试网页 [root@docker compose]# curl 127.0.0.1:80 hello world [root@docker compose]# docker-compose stop |
配置详解:
1 2 3 4 5 | ports: - target: 80 #容器内的端口 published: 8080 #物理主机的端口 protocol: tcp #端口协议(tcp或udp) mode: host #host 和ingress 两总模式,host用于在每个节点上发布主机端口,ingress 用于被负载平衡的swarm模式端口。 |
分类:
docker
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异