docker-compose exec mysql-name bashで何も起きない時

Docker

docker
ミニマリスト_カミ

kamiです。
TwitterYoutubeもやってます。

docker-compose exec mysql-name bashとは

docker-compose exec mysql-name bash

指定した名前のコンテナ内でBashシェルを実行するDocker Composeコマンドです。
具体的なコンテナ名(この例ではmysql-name)は、Docker Composeファイル内で定義されているコンテナの名前に置き換える必要があります。
このコマンドを実行すると、指定したコンテナ内でBashシェルが起動し、そのコンテナ内でコマンドを実行できます。

docker-compose exec mysql-name bashで何も起きない原因

docker-compose exec mysql-name bashで何も起きない原因1

dockerコンテナが立ち上がっていない

立ち上がってるかどうかは「ps」コマンドで確認しましょう。

docker compose ps

以下のように何も表示されなければ立ち上がっていません。
また実行したい「mysql-name」の箇所が「NAME」になければ同様です。

NAME       IMAGE               COMMAND             SERVICE            CREATED              STATUS               PORTS

docker compose up

dockerが起動していない場合はexecは動きません。

「docker exec」コマンドは実行中のコンテナ内で、新しいコマンドを実行します。 

docker-compose exec mysql-name bashで何も起きない原因2

「docker compose」コマンドは「docker-compose.yml」ファイルがあるパスで実行しなければなりません。

icon

カレントディレクトリの確認してみましょう。

DockerDocker

Posted by kami