Назад | Перейти на главную страницу

Запуск Consul Agent на AWS EB / Elastic Beanstalk

Есть ли у кого-нибудь опыт запуска Consul Agent на AWS? У меня есть кластер серверов консула, но я хочу использовать AWS EB для развертывания приложения докера и агента консула докера (progrium / consul) для каждого экземпляра хоста, чтобы приложение могло использовать консул на локальном хосте, а не все мои приложения обращаются напрямую к группе серверов консула.

На этой странице приведен хороший пример учебной сети Consul (без ссылки на AWS, докеры и т. Д.) - https://jlordiales.me/2015/01/23/docker-consul/

Вот мой Dockerrun.aws.json

{
"AWSEBDockerrunVersion": "2",
"authentication": {
    "bucket": "example-com",
    "key": "registry.example.com/example.json"
},
"containerDefinitions": [
    {
        ... php app container defined here ...
        "portMappings": [
            {
                "containerPort": 80,
                "hostPort": 80
            }
        ]
    },
    {
        "cpu": 1000,
        "entryPoint": [],
        "environment": [
            {
                "name": "CONSUL_JOIN",
                "value": "consul.example.com"
            },
            {
                "name": "CONSUL_URL",
                "value": "localhost:8500"
            }
        ],
        "essential": true,
        "image": "progrium/consul",
        "links": [],
        "memory": 900,
        "name": "consulagent",
        "portMappings": [
            {
                "containerPort": 8400,
                "hostPort": 8400
            },
            {
                "containerPort": 8500,
                "hostPort": 8500
            }
        ]
    }

]

}

Просто интересно, как передать обычные аргументы моему контейнеру докеров, чтобы он работал как агент и присоединялся к моим серверам, например. $ docker run -d -p 8400:8400 -p 8500:8500 -p 8600:53/udp \ --name node4 -h node4 progrium/consul -join $JOIN_IP