gpt4 book ai didi

amazon-web-services - 为弹性beantalk docker部署提供环境变量

转载 作者:行者123 更新时间:2023-12-02 04:41:38 24 4
gpt4 key购买 nike

我有一个 Dockerfile,它使用用户访问 token 从 github 中提取一个私有(private)仓库:

ARG DEPLOYMENT_TOKEN
RUN git clone https://$DEPLOYMENT_TOKEN:x-oauth-basic@github.com/company-org/api.git /tmpapp/

现在,当我在弹性 beantalk 中创建一个新应用程序和环境时,如何在弹性 beantalk 首次尝试构建 docker 镜像和部署时为它提供该访问 token ?

这可以传递给 eb cli 命令 eb create 吗?
eb create --envvars DEPLOYMENT_TOKEN=$DEPLOYMENT_TOKEN

那么当应用程序尝试创建环境并部署时,它将包含环境变量,以便在构建 docker 镜像时能够从私有(private)存储库中提取?

我知道 eb setenv 允许您在成功部署后设置环境变量,但我想为 docker 构建过程执行此操作。

我不想通过使用容器描述中的环境键将访问 token 放入 Dockerrun 文件中。
{
"containerDefinitions": [
{
"name": "myContainer",
"image": "something",
"environment": [
{
"name": "MY_DB_PASSWORD",
"value": "password"
}
],

因为这意味着任何人都可以使用该信息,而且无论如何我都不确定这是否可行。

我也考虑过.ebextensions,现在正在研究。

最佳答案

AWS 对此有一篇文章:

Microservices Service Discovery

我发现了更多可能对配置服务发现感兴趣的资源。

  • 使用 S3 .
  • 使用 Consul in ECS .
  • 虽然这篇文章描述了容器使用 Consul 进行 DNS 查询以发现其他服务的方法 - 您也可以将 Consul 用作 K/V store存储 secret 信息。
  • 关于amazon-web-services - 为弹性beantalk docker部署提供环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37067701/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com