皆様
いつもお世話になっています。
問題は表題の通りですが、行った操作を以下に記述します。
皆様のお知恵を貸していただければ幸いです。
実行環境
docker -v
- Docker version 19.03.5, build 633a0ea
docker-compose -v
- docker-compose version 1.25.4, build 8d51620a
OS
- Centos8
実行の内容
docker-composeを用いてredmineをウェブサーバー上に公開したくbitnami-docker-redmineのレポジトリから"docker-compose.yml"をダウンロードしました。
https://github.com/bitnami/bitnami-docker-redmine
以下のコードで実行。
curl
1curl -sSL https://raw.githubusercontent.com/bitnami/bitnami-docker-redmine/master/docker-compose.yml > docker-compose.yml
ダウンロードしたファイルを確認して、問題ないことを認識しました。
version: '3' services: mariadb: image: 'bitnami/mariadb:10.3' environment: - ALLOW_EMPTY_PASSWORD=yes - MARIADB_USER=bn_redmine - MARIADB_DATABASE=bitnami_redmine volumes: - 'mariadb_data:/bitnami' redmine: image: 'bitnami/redmine:latest' environment: - REDMINE_DB_USERNAME=bn_redmine - REDMINE_DB_NAME=bitnami_redmine ports: - '80:3000' volumes: - 'redmine_data:/bitnami' depends_on: - mariadb volumes: mariadb_data: driver: local redmine_data: driver: local
確認後に以下のコマンドで、コンテナを立ち上げました。
docker-compose up -d
コンテナを立ち上げてしばらく待ち、以下のコマンドでログを確認しました。
docker-compose logs
確認したところ、"redmine"側でエラーが発生しており、
"Error executing 'postInstallation': Failed to connect to mariadb:3306 after 36 tries"
との記述がありました。(以下エラーログ)
mariadb_1 | mariadb 05:22:19.39 mariadb_1 | mariadb 05:22:19.40 Welcome to the Bitnami mariadb container mariadb_1 | mariadb 05:22:19.40 Subscribe to project updates by watching https://github.com/bitnami/bitnami-docker-mariadb mariadb_1 | mariadb 05:22:19.40 Submit issues and feature requests at https://github.com/bitnami/bitnami-docker-mariadb/issues mariadb_1 | mariadb 05:22:19.40 Send us your feedback at containers@bitnami.com mariadb_1 | mariadb 05:22:19.40 mariadb_1 | mariadb 05:22:19.40 INFO ==> ** Starting MariaDB setup ** mariadb_1 | mariadb 05:22:19.44 INFO ==> Validating settings in MYSQL_*/MARIADB_* env vars mariadb_1 | mariadb 05:22:19.44 WARN ==> You set the environment variable ALLOW_EMPTY_PASSWORD=yes. For safety reasons, do not use this flag in a production environment. mariadb_1 | mariadb 05:22:19.48 INFO ==> Initializing mariadb database mariadb_1 | mariadb 05:22:19.51 INFO ==> Installing database redmine_1 | redmine_1 | Welcome to the Bitnami redmine container redmine_1 | Subscribe to project updates by watching https://github.com/bitnami/bitnami-docker-redmine redmine_1 | Submit issues and feature requests at https://github.com/bitnami/bitnami-docker-redmine/issues redmine_1 | Send us your feedback at containers@bitnami.com redmine_1 | mariadb_1 | mariadb 05:22:23.05 INFO ==> Starting mariadb in background redmine_1 | nami INFO Initializing redmine redmine_1 | redmine INFO Configuring Redmine database... redmine_1 | mysql-c INFO Trying to connect to MySQL server mariadb_1 | mariadb 05:22:24.12 INFO ==> Configuring authentication mariadb_1 | mariadb 05:22:24.17 INFO ==> Running mysql_upgrade mariadb_1 | mariadb 05:22:24.35 INFO ==> Stopping mariadb mariadb_1 | mariadb 05:22:26.38 INFO ==> ** MariaDB setup finished! ** mariadb_1 | mariadb_1 | mariadb 05:22:26.42 INFO ==> ** Starting MariaDB ** mariadb_1 | 2020-02-06 5:22:26 0 [Note] /opt/bitnami/mariadb/sbin/mysqld (mysqld 10.3.22-MariaDB) starting as process 1 ... mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Using Linux native AIO mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Uses event mutexes mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Compressed tables use zlib 1.2.11 mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Number of pools: 1 mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Using SSE2 crc32 instructions mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Completed initialization of buffer pool mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority(). mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: 128 out of 128 rollback segments are active. mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Creating shared tablespace for temporary tables mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ... mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB. mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Waiting for purge to start mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: 10.3.22 started; log sequence number 1625457; transaction id 21 mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Loading buffer pool(s) from /bitnami/mariadb/data/ib_buffer_pool mariadb_1 | 2020-02-06 5:22:26 0 [Note] Plugin 'FEEDBACK' is disabled. mariadb_1 | 2020-02-06 5:22:26 0 [Note] InnoDB: Buffer pool(s) load completed at 200206 5:22:26 mariadb_1 | 2020-02-06 5:22:26 0 [Note] Server socket created on IP: '0.0.0.0'. mariadb_1 | 2020-02-06 5:22:26 0 [Warning] 'proxies_priv' entry '@% root@1643f97fe62c' ignored in --skip-name-resolve mode. mariadb_1 | 2020-02-06 5:22:26 0 [Note] Reading of all Master_info entries succeeded mariadb_1 | 2020-02-06 5:22:26 0 [Note] Added new Master_info '' to hash table mariadb_1 | 2020-02-06 5:22:26 0 [Note] /opt/bitnami/mariadb/sbin/mysqld: ready for connections. mariadb_1 | Version: '10.3.22-MariaDB' socket: '/opt/bitnami/mariadb/tmp/mysql.sock' port: 3306 Source distribution redmine_1 | Error executing 'postInstallation': Failed to connect to mariadb:3306 after 36 tries redmine_redmine_1 exited with code 1
このエラーからデータベース側に問題があると考え、データベースのコンテナにアクセスしました。
アクセスしたところ、ログイン及びデータベースの参照など問題なく行えたため、データベースに不具合がないことを確認(以下のコマンドが実行結果です)
docker exec -it <mariadb's ID> /bin/bash -------------------------------------------------------------------------------- I have no name!@c97be876fcf9:/$ mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 9 Server version: 10.3.22-MariaDB Source distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | bitnami_redmine | | information_schema | | mysql | | performance_schema | | test | +--------------------+ 5 rows in set (0.001 sec) MariaDB [(none)]>
そこで"docker-compose.yml"のファイルの記述に問題があると考え、外部向けにポートを開放する記述をmariadbコンテナに記述してみましたが、うまく動きません。
ports: - '3306:3306'
原因がredmineにあるのかdockerそのものにあるのか不明なため別の"docker-compose.yml"を作成しました。(以下の手順で作成)
docker-compose down -v rm -rf docker-compose.yml vi docker-compose.yml
以下を記述しました。
version: '3.1' services: wordpress: image: wordpress restart: always ports: - 8080:80 environment: WORDPRESS_DB_HOST: db WORDPRESS_DB_USER: exampleuser WORDPRESS_DB_PASSWORD: examplepass WORDPRESS_DB_NAME: exampledb db: image: mysql:latest restart: always environment: MYSQL_DATABASE: exampledb MYSQL_USER: exampleuser MYSQL_PASSWORD: examplepass MYSQL_RANDOM_ROOT_PASSWORD: '1' ~
上記の内容は WordPress と MySQLとそれぞれ違うアプリとDBを用いたコンテナを準備し、同様に実行しましたが、こちらでもデータベースに接続できませんでした。
wordpressのほうでは8080にアクセスすると、初期画面までは表示可能でした。
環境に問題があるのかと考え、上記の2ファイル(redmine版とwordpress版)をWindows環境のDocker for Windowsで実行すると、問題なく実行できました。
伺いたいこと
このことからアプリコンテナの問題でもなく、DBコンテナにも問題がなく、Dockerの実行環境に問題があるところまで突き止めましたが、どこを疑えばいいか皆目見当がつきません。
この問題について、何か心当たりのいらっしゃる方がいましたらアドバイスを頂けますと幸いです。
恐縮ですがよろしくお願い申し上げます。
追伸 20200-02-07
以下を試しました
systemctl stop firewalld systemctl restart docker
通信ができましたが、firewallの何が悪いのかまだ謎です。。。
こちらも参考としてリンクを張っておきます。
https://github.com/moby/moby/issues/32138
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。