MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come distribuire l'immagine Docker mongoDB su Elastic Beanstalk?

Ora, diversi mesi dopo, questo è possibile utilizzando il tipo di ambiente Docker Multicontainer:http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_docker_ecs.html .

Ecco un Dockerrun.aws.json proof-of-concept che non ho ancora utilizzato in produzione:

{
  "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"
        }
      ]
    }
  ]
}

Questo approccio richiede che il tipo di ambiente sia impostato su Multicontainer Docker e che un gruppo di sicurezza sia collegato all'ambiente Elastic Beanstalk che consenta l'accesso alla porta 27017 dai client del database.