Bây giờ vài tháng sau, điều này có thể thực hiện được bằng cách sử dụng kiểu môi trường Multicontainer Docker: http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_docker_ecs.html .
Đây là bằng chứng về khái niệm Dockerrun.aws.json mà tôi chưa sử dụng trong sản xuất:
{
"AWSEBDockerrunVersion": 2,
"volumes": [
{
"name": "mongo-app",
"host": {
"sourcePath": "/var/app/current/mongo-app"
}
}
],
"containerDefinitions": [
{
"name": "mongo-app",
"image": "mongo",
"essential": true,
"memory": 6000,
"command": ["mongod","--storageEngine=wiredTiger","--logpath=/var/log/mongodb/mongo.log"],
"portMappings": [
{
"hostPort": 27017,
"containerPort": 27017
}
],
"mountPoints": [
{
"sourceVolume": "mongo-app",
"containerPath": "/data/db"
},
{
"sourceVolume": "awseb-logs-mongo-app",
"containerPath": "/var/log/mongodb"
}
]
}
]
}
Cách tiếp cận này yêu cầu loại môi trường được đặt thành Multicontainer Docker và một nhóm bảo mật được gắn vào môi trường Elastic Beanstalk cho phép truy cập cổng 27017 từ các máy khách cơ sở dữ liệu.