Docker Compose 配置

  1. web 服务

    • 使用当前目录的 Dockerfile 构建镜像
    • 挂载项目目录到容器内
    • 将容器的 8000 端口映射到主机的 8000 端口
    • 设置数据库连接环境变量
    • 依赖于 db 服务
  2. db 服务

    • 使用官方 MySQL 8.0 镜像
    • 持久化存储 MySQL 数据
    • 设置数据库、用户和密码
    • 将容器的 3306 端口映射到主机的 3306 端口

使用方法:

  1. 确保项目根目录有 Dockerfile 和 docker-compose.yml 文件

  2. 启动服务:docker-compose up -d

  3. 停止服务:docker-compose down

  4. 查看服务状态:docker-compose ps

    version: '3.8'

    services:
    web:
    build: .
    command: python manage.py runserver 0.0.0.0:8000
    volumes:
    - .:/app
    ports:
    - "8000:8000"
    environment:
    - DB_HOST=db
    - DB_NAME=webapp
    - DB_USER=user
    - DB_PASSWORD=password
    - DB_PORT=3306
    depends_on:
    - db

    db:
    image: mysql:8.0
    volumes:
    - mysql-data:/var/lib/mysql
    environment:
    - MYSQL_DATABASE=webapp
    - MYSQL_USER=user
    - MYSQL_PASSWORD=password
    - MYSQL_ROOT_PASSWORD=rootpassword
    ports:
    - "3306:3306"

    volumes:
    mysql-data:
    driver: local

相关推荐
鸠摩智首席音效师5 小时前
linux 系统中 Shutting Down, Restarting, Halting 有什么区别 ?
linux·运维·服务器
CIb0la5 小时前
Linux 将继续不支持 HDMI 2.1 实现
linux·运维·服务器
hhhjjjj6 小时前
docker安装postgreSQL
docker·postgresql·容器
吕了了6 小时前
85 微PE吕了了修改版--更新!
运维·windows·电脑·系统
鹿鸣天涯6 小时前
Kali Linux 2025.4 发布:桌面环境增强,新增 3 款安全工具
linux·运维·安全
学习&笔记7 小时前
MTK(系统篇)user版本无法使用setenforce 0命令关闭selinux权限
linux·运维·服务器
Bdygsl7 小时前
Linux(8)—— 进程优先级与环境变量
linux·运维·服务器
吕了了8 小时前
87 Windows 系统安装的本质是什么?
运维·windows·电脑·系统
阿里巴巴P8资深技术专家9 小时前
docker容器启动报错
运维·docker·容器
杨云龙UP9 小时前
MySQL 8.0.x InnoDB 写入链路优化:Redo Log 与 Buffer Pool 扩容与缓冲区调优实战记录-20251029
linux·运维·数据库·sql·mysql