返回文章列表
·1 分钟阅读

Docker Compose 多配置文件简化

使用 COMPOSE_FILE,无需每次指定多个 -f

源码

# env.sh
if [ -z "$1" ]
then
  echo "usage:
  sh env.sh <env>
  <env>: local, test or prod"
  exit
fi

if [ "$1" = "local" ]
then
  export COMPOSE_FILE=docker-compose.yml
elif [ "$1" = "test" ]
then
  export COMPOSE_FILE=docker-compose.yml:docker-compose.test.yml
elif [ "$1" = "prod" ]
then
  export COMPOSE_FILE=docker-compose.yml:docker-compose.prod.yml
fi

echo "Now compose file is $COMPOSE_FILE"

使用

# 根据环境source对应的环境脚本
# 本地. ./env.sh local
# 测试. ./env.sh test
# 生产. ./env.sh prod