私はmysql
のコンテナを試しています。そのコンテナのCMD
パラメータはmysqld
です。したがって、以下のパラメータは同じです。mysqlデーモンを実行している `/ bin/bash -c`のドッカー
docker run --name db -e MYSQL_ROOT_PASSWORD=proot --rm mysql
docker run --name db -e MYSQL_ROOT_PASSWORD=proot --rm mysql mysqld
これで、複数のコマンドを使用するときに問題が発生しました。ドッカーコンテナで複数のコマンドを使用するには、/bin/bash -c
を使用する必要があります。私はmysqld
コマンドを使用して例示:
docker run --name db -e MYSQL_ROOT_PASSWORD=proot --rm mysql /bin/bash -c "mysqld"
このコマンドは私に次のエラーがスローされます。
mysqld: Table 'mysql.plugin' doesn't exist
その後、mysqlデーモンが停止し、その理由がわかりません。
私は最初にデアモンを開始してから何か他のものを起動するような複数のコマンドを使用したいので、/bin/bash -c
の構文を使用します。mysqld & some other command
私はこの問題の回避策として別のコンテナを作成したくありません。
サイドノート:私はトラブルシューティングのため--rm
を使用しています。それ以外の場合は、-d
を使用してコンテナを取り外します。