俺です。
無呼吸してますか?
未だにecs-cli 1.6.0を使ってる情弱の俺たちはマッハで1.7.0以上にあげましょう。
なぜならv3形式のcomposeファイルを作成した場合,ecs-cli compose
で指定するdocker-compose.yml
を環境変数でサクッと環境を切り替えたいという欲望を叶えることができないからです。
## 1.7.0
* Feature - Add support for container health check (#472)
* Feature - Add support for devices (#508)
* Bug - Fix error in ps command (#522)
* Bug - Fix error using ENV variables with docker compose v3 (#537)←めっちゃこれが合致
定義ファイル
- docker-compose.yml
ecs-cli 1.6.0で以下のようなcomposeパラメータを作ってecs-cliを実行すると、
環境変数をセットしてくれません。
version: '3'
services:
api:
image: ${API_ECR}
ports:
- "80:80"
command: sl
env_file:
- .ecs.${SERVICE_ENVIRONMENT}.env
logging:
driver: "awslogs"
options:
awslogs-group: "${SERVICE_ENVIRONMENT}/stdout"
awslogs-stream-prefix: "api"
awslogs-region: "ap-northeast-1"
- ecs-params.yml
ただしecs-params.ymlの環境変数は読むという...
version: 3
task_definition:
ecs_network_mode: awsvpc
task_execution_role: app
task_size:
cpu_limit: 1024
mem_limit: 2GB
services:
rails:
essential: true
run_params:
network_configuration:
awsvpc_configuration:
subnets:
- ${SECRETSMANAGER_ECS_SUBNET_AZ1}
- ${SECRETSMANAGER_ECS_SUBNET_AZ2}
security_groups:
- ${SECRETSMANAGER_SECURITY_GROUP1}
assign_public_ip: DISABLED
まず使ってる道具のCHANGELOG読めよハゲという話でした。
おわり。