如何在Circle ci config.yml中为AWS ECS设置数据库配置变量?

时间:2019-07-20 11:04:33

标签: database terraform environment amazon-ecs circleci

你好吗

我正在使用docker将go backend api部署到ecs。

我正在使用ci圈。

我需要设置数据库配置环境变量以运行后端api,但是我不知道如何在ci圈中设置该信息。

我正在使用terraform初始化aws资源,是否需要在terraform中设置数据库配置环境变量?还是可以在圈子ci config.yml上设置它?

谢谢

1 个答案:

答案 0 :(得分:0)

您可以在任务定义中定义环境变量,以便可用于ECS中的docker容器。

resource "aws_ecs_task_definition" "backend-app" {
  family = "backend"

  container_definitions = <<EOF
[
  {
    "portMappings": [
      {
        "hostPort": 80,
        "protocol": "tcp",
        "containerPort": 3000
      }
    ],
    "environment": 
        [
            {
                "name": "NODE_ENV",
                "value":"production"
            },
            {
                 "name": "DB_HOST",
                 "value": "HOST_ADDRESS"
            },
            {
                "name": "DB_PASS",
                "value": "DB_PASSWORD"
            }
        ],
    "cpu": 1000,
    "memory": 1000,
    "image": "***.dkr.ecr.us-west-2.amazonaws.com/backend:latest",
    "name": "backend",

  }
]
EOF
}