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

Контейнер WordPress Docker на Elastic Beanstalk не подключается к контейнеру MariaDB

Я пытаюсь создать мульти-контейнерное развертывание Docker WordPress на Beanstalk, запустив файл Dockerrun.aws.json из интерфейса командной строки EB. Вот мой Dockerrun:

{
"AWSEBDockerrunVersion": 2,
"containerDefinitions": [
    {
        "name": "mariadb",
        "image": "mariadb:latest",
        "essential": true,
        "memory": 128,
        "portMappings": [
            {
                "hostPort": 3306,
                "containerPort": 3306
            }
        ],
        "environment": [
            {
                "name": "MYSQL_USERNAME",
                "value": "root"
            },
            {
                "name": "MYSQL_PASSWORD",
                "value": "password"
            },
            {
                "name": "MYSQL_DB_NAME",
                "value": "wordpress"
            }
        ]
    },
    {
        "name": "wordpress",
        "image": "wordpress",
        "essential": true,
        "memory": 128,
        "portMappings": [
            {
                "hostPort": 80,
                "containerPort": 80
            }
        ],
        "links": [
            "mariadb"
        ],
        "environment": [
            {
                "name": "MYSQL_ROOT_PASSWORD",
                "value": "password"
            }
        ]
     }
  ]
}

Среда Beanstalk запускается правильно, и я могу перейти к конечной точке и начать настройку WordPress, но она никогда не подключается к MariaDB. Когда я подключаюсь к экземпляру хоста по SSH, я вижу, что контейнеры WordPress и MariaDB запускаются снова и снова - и не работают. На хосте есть несколько файлов журнала mariadb- * в / var / log / container / со следующим текстом:

error: database is uninitialized and password option is not specified 
You need to specify one of MYSQL_ROOT_PASSWORD, 
MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD

Я предполагаю, что пароль не проходит. Есть идеи, почему бы и нет? Спасибо

Решение было простым. Синтаксис, который я использовал, был неправильным. Изначально я использовал:

"name": "MYSQL_DB_NAME"

Но должно было быть:

"name": "MYSQL_DATABASE"