Docker Compose 进阶:如何用配置文件管理复杂容器环境

Docker Compose 进阶:如何用配置文件管理复杂容器环境

很多人用Docker只会docker run一个个启动容器,今天教你怎么用Docker Compose配置文件来管理一整套服务。

为什么要用Compose

想象一下你要部署一个家庭影院系统:Jellyfin、qbittorrent、Sonarr、Radarr……一个一个启动很麻烦,用Compose只需要一个docker-compose.yml文件,一条命令全启动。

基础配置怎么写

version: '3.8'
services:
  jellyfin:
    image: jellyfin/jellyfin
    container_name: jellyfin
    volumes:
      - ./config:/config
      - /mnt/media:/media
    ports:
      - "8096:8096"
    restart: unless-stopped

保存为docker-compose.yml,在同级目录执行docker-compose up -d,容器就启动了。

进阶技巧分享

1. 环境变量管理

.env文件存储敏感信息,配置里用${变量名}调用,避免把密码写进配置文件。

2. 网络隔离

不同项目用不同网络段,避免IP冲突:

networks:
  frontend:
    driver: bridge
  backend:
    driver: bridge

3. 健康检查

给关键服务加健康检查,容器挂了会自动重启:

healthcheck:
  test: ["CMD", "curl", "-f", "http://localhost:8096"]
  interval: 30s
  timeout: 10s
  retries: 3

常见坑点

  • 端口冲突:先docker ps检查哪个端口被占用了
  • 路径写错:建议用绝对路径或者用${PWD}确保路径正确
  • 权限问题:有些容器需要特定用户权限,记得加user: "1000:1000"

更多Docker和NAS教程,可以去nucnas.top看看,里面有详细的步骤截图。


有问题评论区见。

← 返回首页