AWS ECS上的Symfony应用程序仅具有数据容器 – 这是正确的方向吗?

我有一个docker化的Symfony2应用程序,由四个容器组成:

  • PHP-FPM
  • nginx的
  • MySQL的
  • 代码(具有卷的数据容器)

在我的本地机器上,这个安装程序在docker-compose没有问题的情况下运行:

code: image: ebc9f7b635b3 nginx: build: docker/nginx ports: - "80:80" links: - php volumes_from: - code php: build: docker/php volumes_from: - code links: - mysql mysql: image: mysql ports: - "5000:3306" command: mysqld --sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" environment: - MYSQL_ROOT_PASSWORD=xyz - MYSQL_DATABASE=xyz - MYSQL_USER=xyz - MYSQL_PASSWORD=xyz 

我想在AWS ECS上部署我的应用程序,因此我预build了所有图像并将它们推送到AWS容器registry,使用新服务创build了一个新的群集,并将我的本地docker-compose.yml翻译成TaskDefinition。 由于昨天我试图让它运行,但遵循官方Dokumentation http://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_data_volumes.html和search几个小时,我找不到一个方法来得到它加工。

要么这个服务在一个PENDING状态下被删除而没有启动一个容器(mysql容器除外),或者如果我将一个卷附加到任务定义上,那么这个容器就会出现,但是数据没有被映射。

是否必须在“任务定义”的volumesFrom部分中以特殊语法引用仅数据容器?

除了使用EFS外,现在是否有解决scheme?

谢谢!