docker-composeで起動したコンテナの中身を確認したい場合、「bin/bash」コマンドを用いることでログイン状態にできます。
dockerコマンドでもやりましたが、docker-composeの場合のやり方を書いてみます。
基本コマンド
起動している場合には基本コマンドでいけます。
docker-compose ps
StateがUp状態であれば、基本コマンドでいけます。
docker-compose exec SERVICE COMMAND
例として、docker-compose.ymlのserviceにphp7を作成した場合のコマンド
docker-compose exec php7 /bin/bash
起動していない場合
docker-compose run --rm SERVICE COMMAND
execコマンドで実行しても、コンテナが見つかりません。というエラーになるため起動からする必要があるため「run」コマンドを使用します。
ENTRYPOINTが設定されている場合
DockerfileにてENTRYPOINTが設定されている場合は、ENTRYPOINTのコマンドが優先されます。
オプションで「/bin/bash」を指定してしまいましょう。
docker-compose exec --entrypoint /bin/bash SERVICE
#### alpine Linuxの場合の注意点
alpine Linuxを使用している場合、ログイン状態でなにもメッセージが出ない場合があります。
軽くするためにいろいろと表示が省かれていると思われます。
「ls」コマンドを打ってみて、表示があったりすればログインできてたりします。
docker-compose で/bin/bash
簡単かと思っていましたが、状況により使えるコマンドがあったため、何度か困りました。
だんだんと動作が理解できてきたためいろんなパターンを試せた感じです。
設定ファイルが反映されているかどうか確認のために使ってみてください。