質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.13%

docker上のmattermostでシェルに入れない

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 689

docker mattermostでシェルに入れない

ご覧いただきありがとうございます。

docker上のmattermostのデータ永続化のために、
以下の手順で構築を行いました。

環境はWindows10です。

Dockerfile を作成

FROM busybox

VOLUME /var/lib/mysql

VOLUME /mm/mattermost

Docker イメージを作成

$ docker build -t mattermost_storage .

Docker コンテナの起動

$ docker run -it --restart=always --name mattermost_storage mattermost_storage
view raw

Mattermost のコンテナ作成

$ docker run --restart=always --name mattermost --volumes-from mattermost_storage -d --publish 8065:8065 mattermost/mattermost-preview

しかし、シェルに入れません。

docker exec -it mattermost /bin/bash


(docker exec -it mattermost /bin/sh)でも同様です。

Error response from daemon: Container 4efa634da71c66dd5f594e65a3d9a1c8b58ea8e315fa07c1656444d563400c01 is restarting, wait until the container is running

ログは以下の通りです。

2019-07-25T12:47:52.505249Z 0 [Note] InnoDB: Completed initialization of buffer pool
2019-07-25T12:47:52.507607Z 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
2019-07-25T12:47:52.519842Z 0 [Note] InnoDB: Highest supported file format is Barracuda.
2019-07-25T12:47:52.521790Z 0 [Note] InnoDB: Log scan progressed past the checkpoint lsn 12465061
2019-07-25T12:47:52.521852Z 0 [Note] InnoDB: Doing recovery: scanned up to log sequence number 12465070
2019-07-25T12:47:52.521861Z 0 [Note] InnoDB: Database was not shutdown normally!
2019-07-25T12:47:52.521865Z 0 [Note] InnoDB: Starting crash recovery.
2019-07-25T12:47:52.638461Z 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
2019-07-25T12:47:52.638571Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
2019-07-25T12:47:52.638637Z 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
2019-07-25T12:47:52.660105Z 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
2019-07-25T12:47:52.660869Z 0 [Note] InnoDB: 96 redo rollback segment(s) found. 96 redo rollback segment(s) are active.
2019-07-25T12:47:52.660923Z 0 [Note] InnoDB: 32 non-redo rollback segment(s) are active.
2019-07-25T12:47:52.661149Z 0 [Note] InnoDB: Waiting for purge to start
2019-07-25T12:47:52.711434Z 0 [Note] InnoDB: 5.7.27 started; log sequence number 12465070
2019-07-25T12:47:52.712181Z 0 [Note] Plugin 'FEDERATED' is disabled.
2019-07-25T12:47:52.757033Z 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
2019-07-25T12:47:52.757808Z 0 [Note] Found ca.pem, server-cert.pem and server-key.pem in data directory. Trying to enable SSL support using them.
2019-07-25T12:47:52.758161Z 0 [Warning] CA certificate ca.pem is self signed.
2019-07-25T12:47:52.793813Z 0 [Note] InnoDB: Buffer pool(s) load completed at 190725 12:47:52
2019-07-25T12:47:52.794026Z 0 [Note] Server hostname (bind-address): '*'; port: 3306
2019-07-25T12:47:52.794070Z 0 [Note] IPv6 is available.
2019-07-25T12:47:52.794086Z 0 [Note]   - '::' resolves to '::';
2019-07-25T12:47:52.794104Z 0 [Note] Server socket created on IP: '::'.
2019-07-25T12:47:52.808207Z 0 [Warning] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
2019-07-25T12:47:52.815889Z 0 [Note] Event Scheduler: Loaded 0 events
2019-07-25T12:47:52.816169Z 0 [Note] mysqld: ready for connections.
Version: '5.7.27'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server (GPL)
Updating CA certificates
Starting platform
./docker-entry.sh: line 18: /mm/mattermost/bin/mattermost: No such file or directory

どなたかご教示いただければ幸いです。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • gentaro

    2019/07/25 22:05

    そのコンテナはよく知りませんが、そもそもbash入ってるんですか?
    (/bin/shならいけそうな気はしますが)

    キャンセル

  • RMBQsKe5AP10gjx

    2019/07/25 22:11

    ご回答いただきありがとうございます。
    docker exec -it mattermost /bin/bash
    とすると、
    Error response from daemon: Container 4efa634da71c66dd5f594e65a3d9a1c8b58ea8e315fa07c1656444d563400c01 is restarting, wait until the container is running


    となってしまいます。

    キャンセル

  • gentaro

    2019/07/25 22:13

    で、bashは入ってるんですか?

    キャンセル

  • RMBQsKe5AP10gjx

    2019/07/26 12:01

    遅れて申し訳ございません。
    入っています。

    キャンセル

回答 2

+1

mattermost containerは正常に起動できているのでしょうか?

ログの最後で

./docker-entry.sh: line 18: /mm/mattermost/bin/mattermost: No such file or directory

とでており、そもそもコンテナの起動に失敗しているような気がします。(mattermostの実行ファイルがコンテナ内に見つからないのかな?)

--restart-alwaysオプションを有効にしてコンテナを起動しているので、おそらく起動→ mattermostの起動に失敗し、コンテナが落ちる → --restart-always なのでコンテナが再起動される → コンテナ起動に失敗 → 以下ループ

という動きをしているのではないかと思います。

docker exec -it mattermost /bin/bashの実行時のエラーログで以下が出るのは、上記のコンテナ再起動中に/bin/bashを叩こうとしているからだと思われます。

Error response from daemon: Container 4efa634da71c66dd5f594e65a3d9a1c8b58ea8e315fa07c1656444d563400c01 is restarting, wait until the container is running

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

checkベストアンサー

0

mattermost/mattermost-preview のdocker imageを構成する Dockerfileを確認すると,
/mm/mattermost/ ディレクトリ以下に実行バイナリ等を展開しています.
一方で,永続化コンテナ mattermost_storage では /mm/mattermost/ を
ボリューム領域に指定しています.

このため, --volumes-from でこの永続化コンテナを利用すると
/mm/mattermost/を空ディレクトリで上書きしてしまいます.
このためログの通り /mm/mattermost/bin/mattermost: No such file or directory
が出力されています.

永続化コンテナのDockerfileについて,
VOLUME /mm/mattermost の行を削除することで解決できると思います.
また,mattermost/mattermost-preview では,/mm/mattermost-data/
ディレクトリをVOLUME領域に指定しているので,
永続化コンテナのDockerfileでは,こちらの領域をVOLUMEで定義した方がよいと思います.

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.13%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

同じタグがついた質問を見る