Я пытаюсь создать файл docker -compose.yml, который вызовет JIRA и MySQL. Вот мой файл:
version: '3'
services:
jira:
depends_on:
- mysql
container_name: jira
restart: always
networks:
- jiranet
build:
context: .
dockerfile: Dockerfile.jira
environment:
- ATL_DB_TYPE=mysql
- ATL_DB_DRIVER=com.mysql.cj.jdbc.Driver
- ATL_JDBC_URL=jdbc:mysql://mysql:3306/jiradb
- ATL_JDBC_USER=jira
- ATL_JDBC_PASSWORD=jellyfish
ports:
- 8080:8080
volumes:
- jira-data:/var/atlassian-data/jira
mysql:
container_name: mysql
restart: always
image: mysql:5.7
networks:
- jiranet
environment:
- MYSQL_ROOT_PASSWORD=ChangeMe!
- MYSQL_DATABASE=jiradb
- MYSQL_USER=jira
- MYSQL_PASSWORD=jellyfish
command: [mysqld, --character-set-server=utf8, --collation-server=utf8_bin, --default-storage-engine=INNODB, --max_allowed_packet=256M, --innodb_log_file_size=2GB, --transaction-isolation=READ-COMMITTED, --binlog_format=row]
volumes:
- mysql-data:/var/lib/mysql
networks:
jiranet: {}
volumes:
jira-data:
mysql-data:
К сожалению, при попытке инициализировать базу данных я получаю ошибки запуска JIRA в виде:
CREATE command denied to user 'jira'@'172.22.0.3' for table 'jiraaction'
Я предполагаю, что это потому, что Контейнер mysql создает пользователя jira, но позволяет ему подключаться только с localhost. Но контейнер JIRA рассматривается как поступающий с внешнего IP-адреса.
Есть идеи, как я могу сделать базу данных jiradb в mysql доступной из контейнера JIRA пользователем jira?