Skip to content

Docker-compose 环境准备测试和解析

环境配置

shell
#环境准备
[root@docker02.oldboylinux.cn ~]# mv docker-compose-linux-x86_64-2.30.3  /bin/docker-compose
[root@docker02.oldboylinux.cn ~]# chmod +x /bin/docker-compose
[root@docker02.oldboylinux.cn ~]# docker-compose  --version
Docker Compose version v2.30.3

命令格式

命令说明
up -dup ==== run 创建并运行容器<br />启动的时候后台运行类似于docker run -d
down删除容器,删除所有内容(网络,数据卷)
stop/start/restartdocker container 关闭、开启、重启容器。
ps查看容器运行情况 只有 -q选项
top容器进程信息
logs容器日志
rm删除容器(需要容器已经关闭)
images查看镜像

部署 nginx 测试

shell

#测试需要的文件
[root@docker02.oldboylinux.cn /compose01]# tree -F
.
├── docker-compose.yml
└── index.html

#挂载文件添加内容
[root@docker02.oldboylinux.cn /compose01]# echo 'testcompose-success' > ./index.html
#编写docker-compose.yml
[root@docker02.oldboylinux.cn /compose01]# cat docker-compose.yml 
# 定义docker-compose服务配置
services:
  # 服务名称定义(将用于容器间通信)
  ngx:
    # 使用官方nginx镜像,指定1.24版本
    image: nginx:1.24
    # 设置容器名称(便于后续管理)
    container_name: ngx_dc
    # 重启策略:容器退出时自动重启(保证服务可用性)
    restart: always
    # 端口映射:将主机端口映射到容器端口
    ports:
      # HTTP协议端口映射(主机80 -> 容器80)
      - 80:80
      # HTTPS协议端口映射(主机443 -> 容器443)
      - 443:443
    # 卷挂载配置(实现数据持久化和配置注入)
    volumes:
      # 将宿主机当前目录下的index.html文件挂载到容器默认网页目录
      - ./index.html:/usr/share/nginx/html/index.html

#端口问题 删除部分容器
[root@docker02.oldboylinux.cn /compose01]# docker ps -ap | xargs docker rm -f ^C
#执行
[root@docker02.oldboylinux.cn /compose01]# docker-compose up -d 
[+] Running 1/1
 ? Container ngx_dc  Started 
 #查看进程是否成功
[root@docker02.oldboylinux.cn /compose01]# docker ps 
CONTAINER ID   IMAGE        COMMAND                   CREATED         STATUS         PORTS                                                                      NAMES
4178eb602f10   nginx:1.24   "/docker-entrypoint.…"   5 minutes ago   Up 5 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   ngx_dc

感谢阅读,欢迎交流!