Docker Compose Windows版安装与使用教程

#新星杯·14天创作挑战营·第10期#

一、Docker Compose简介

Docker Compose是Docker官方提供的容器编排工具,用于定义和运行多容器Docker应用。通过YAML文件声明服务、网络和卷,可一键启动复杂应用环境。


二、Windows环境安装步骤

1. 安装Docker Desktop

  1. 下载安装包
    访问Docker官网 ,下载Windows版本安装程序。

  2. 运行安装程序

    • 勾选 Enable WSL 2 Integration(提升性能)。
    • 勾选 Use Docker Desktop as a non-root user(避免权限问题)。
  3. 验证安装

    docker --version  # 输出示例:Docker Desktop 4.24.1 
    docker compose version  # 输出示例:Docker Compose version v2.22.0 

2. 配置Windows环境

问题排查:
  • WSL 2未启用

    wsl --install 
    wsl --set-default-version 2 
  • Hyper-V未启用

    • 进入 控制面板 → 程序 → 启用或关闭Windows功能
    • 勾选 Hyper-V 和 Windows Subsystem for Linux

三、Docker Compose核心概念

组件说明
docker-compose.yml定义服务、网络、卷的YAML配置文件
服务(services)单个应用容器(如Nginx、MySQL)
网络(networks)定义容器间通信规则
卷(volumes)持久化存储数据

四、基础使用流程

1. 创建项目目录

mkdir my-docker-app 
cd my-docker-app 

2. 编写docker-compose.yml

version: '3.8'
services:
  web:
    image: nginx:latest 
    ports:
      - "8080:80"
    volumes:
      - ./wwwroot:/usr/share/nginx/html 
    depends_on:
      - redis 
 
  redis:
    image: redis:alpine 
    ports:
      - "6379:6379"

3. 启动服务

docker compose up -d  # -d表示后台运行 
docker compose ps     # 查看运行中的容器 

4. 停止服务

docker compose down  # 删除容器、网络和依赖卷 

五、高级配置示例

1. 环境变量分离

  • 创建.env文件:

    MYSQL_ROOT_PASSWORD=root123 
  • 配置docker-compose.yml :

    services:
      mysql:
        environment:
          MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}

2. 自定义网络

networks:
  app_net:
    driver: bridge 
 
services:
  web:
    networks:
      - app_net 
  redis:
    networks:
      - app_net 

六、常见问题解决方案

1. 端口冲突

# 查找占用端口的进程 
netstat -ano | findstr :8080 
 
# 结束进程(替换PID为实际进程ID)
taskkill /F /PID 1234 

2. 容器间通信失败

  • 确保服务定义在同一网络:
    networks:
      default:
        driver: bridge 
    
    services:
      service1:
        networks:
          - default 
      service2:
        networks:
          - default 

七、企业级部署建议

  1. 多环境配置

    # 开发环境 
    docker compose -f docker-compose.yml  -f docker-compose.dev.yml  up 
    
    # 生产环境 
    docker compose -f docker-compose.yml  -f docker-compose.prod.yml  up 
  2. 日志监控

    docker compose logs -f [service_name]
  3. 卷管理

    volumes:
      postgres_data:
        driver: local 

八、命令速查表

命令说明
docker compose up启动服务(前台模式)
docker compose up -d启动服务(后台模式)
docker compose down停止并删除容器
docker compose build构建镜像
docker compose restart重启服务
docker compose exec进入容器终端

九、总结

Docker Compose通过声明式配置简化多容器应用管理,适用于开发、测试和生产环境。掌握其核心概念和命令,可显著提升容器化部署效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Leaton Lee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值