我有一个由四个容器组成的dockerized Symfony2应用程序:
在我的本地计算机上,这个设置运行时没有使用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上部署我的应用程序,因此我预先构建了所有图像并将它们推送到AWS容器注册表,创建了一个带有新服务的新集群,并将我的本地docker-compose.yml转换为TaskDefinition。 从昨天开始,我试图让它运行,但是在遵循官方Dokumentation之后 http://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_data_volumes.html 并且搜索了几个小时我找不到让它运转的方法。
服务在没有启动容器的情况下陷入PENDING状态(mysql容器除外),或者如果我将卷附加到任务定义,容器即将启动,但数据未映射。
我是否必须在任务定义的volumesFrom部分中以特殊语法引用仅数据容器?
除了使用EFS之外,现在还有解决方案吗?
谢谢!