2

我有以下泊坞窗撰写文件:泊坞窗撰写env_file在多包装弹性魔豆

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弹性魔豆documentation刚刚提到环境选项传递ENV的数组变量,但我找不到如何传递一个文件而不是一个变量数组。

是否有人知道如何将这种泊坞窗,撰写文件正确转换到Dockerrun.aws.json文件?

问候。

回答

0

尝试container-transform

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

它会将ECS格式打印到标准输出。