簡體   English   中英

Docker在Multicontainer Elastic Beanstalk中編寫env_file

[英]Docker Compose env_file in Multicontainer Elastic Beanstalk

我有以下docker compose文件:

version: '2'

services:
  app:
    build: .
    command: >
      bash -cex "
        export LC_ALL=C.UTF-8
        export LANG=C.UTF-8
        /virtualenv/bin/flask run -h 0.0.0.0 -p 5050
      "
    env_file: env
    links:
    - postgres
    ports:
    - 8080:8080

如您所見,我正在使用env_file選項從文件env加載環境變量。

現在,我正在嘗試將此容器部署到Elastic Beanstalk。 到目前為止,這是我的文件Dockerrun.aws.json:

{
  "AWSEBDockerrunVersion": 2,

  "containerDefinitions": [

    {
      "name": "app",
      "image": "myorg/myimage",
      "essential": true,
      "memory": 256,
      "command": [
        "/bin/bash",
        "export LC_ALL=C.UTF-8",
        "export LANG=C.UTF-8",
        "/virtualenv/bin/flask run -h 0.0.0.0 -p 5050"
      ],
      "portMappings": [
        {
          "hostPort": 8080,
          "containerPort": 8080
        }
      ],
      "links": [
        "postgres",
      ]
    }

在AWS Elastic Beanstalk 文檔中,只提到了環境選項以傳遞環境變量數組,但是我找不到如何傳遞文件而不是變量數組的方法。

有人知道如何正確地將此docker -compose文件轉換為Dockerrun.aws.json文件嗎?

問候。

嘗試container-transform

$ pip install container-transform
$ cat docker-compose.yml | container-transform  -v

並將ECS格式打印到STDOUT。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM