Отказано в доступе к услуге mysql из сервиса Grails в контейнере docker - PullRequest
1 голос
/ 13 марта 2020

Доступ запрещен к службе mysql (работающей на частном экземпляре AWS) из контейнера docker (работающему на другом частном экземпляре AWS). Оба экземпляра работают в одном и том же VP C, в одном и том же (частном) su bnet. Я развернул приложение grails внутри контейнера docker, который пытается подключиться к экземпляру mysql db.

Я собираю приложение grails локально, прежде чем собирать и помещать изображение docker на хост docker.

Производственный раздел файла application.yml для приложения на моем локальном компьютере: (Примечание. Здесь config показывает root / root в качестве имени пользователя и пароля. Я настроил пользователя 'blah' с паролем 'blah' со всеми привилегиями на mydb с точно таким же результатом.)

production:
        dataSource:
            dbCreate: update
            url: jdbc:mysql://10.0.2.54:3306/mydb?useSSL=false
            driverClassName: com.mysql.jdbc.Driver
            dialect: org.hibernate.dialect.MySQL5InnoDBDialect
            username: root
            password: root    

Docker контейнер развернут на экземпляре AWS как

        docker run --restart always --name grails-gumball-v1 -td -p 8080:8080 krutikavk/grails-gumball:v1.0

Из mysql журналов в / var /log/mysqld.log:

200313 12:02:43  1987 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1987 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)
         1988 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1988 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)
         1989 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1989 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)
         1990 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1990 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)
         1991 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1991 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)
         1992 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1992 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)
         1993 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1993 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)
         1994 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1994 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)
         1995 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1995 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)
         1996 Connect   root@ip-10-0-0-232.us-west-2.compute.internal on mydb
         1996 Connect   Access denied for user 'root'@'ip-10-0-0-232.us-west-2.compute.internal' (using password: YES)

У меня также открыт порт 3306 на экземпляре AWS mysql для приема входящих соединений.

Чего мне не хватает здесь в конфигурации / приложении .yml / иначе получить mySQL для приема удаленных подключений?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...