我有一个在 ECS/Fargate 上运行的 Node.js 应用程序。我想设置一些环境变量,根据我的阅读,这应该在任务定义中完成。但是,在最初定义任务后似乎没有任何方法可以编辑环境变量。当我查看任务时,它们不可编辑,并且似乎没有任何方法可以编辑任务。有没有办法做到这一点?
容器解决方案被构建为不可变的,这意味着任何形式的更改都应该强制进行新的部署。这让我们可以选择检索当前的 TaskDefinition,更新其环境变量,并使用新定义更新服务:
aws ecs describe-task-definition --task-definition my_task_def
Run Code Online (Sandbox Code Playgroud)
这将检索活动任务定义。从这里您可以更新环境变量并注册新的任务定义:
aws ecs register-task-definition \
--cli-input-json file://<path_to_json_file>/task_def.json
Run Code Online (Sandbox Code Playgroud)
然后更新服务
aws ecs update-service --service my-service --task-definition my_task_def
Run Code Online (Sandbox Code Playgroud)
这将选取 ACTVE 任务定义。
我使用 CLI 进行说明,但使用 Boto3 等 SDK 处理 JSON 可能会容易得多。
归档时间: |
|
查看次数: |
4607 次 |
最近记录: |