Docker

Docker MachineにSSH、Docker ContainerにSSHするコマンド

Dockerでいろいろ作業しなきゃいけないのに、肝心なときに思い出せないSSHコマンド!!備忘のためにまとめておきます。

Docker Machine一覧を取得する

docker-machineの一覧を取得するためには、 docker-machine ls を実行します。

<実行例>

SSHするのに名前が必要になるので控えておきましょう。

Docker MachineにSSHする

docker-machineにSSHするには docker-machine ssh docker-machine を実行します。

下記はマシン名defaultにSSHを実行した結果。

<実行例>

また、SSH後に sudo -i を実行することで、rootユーザになれます。

<実行例>

ユーザがdocker -> rootになっているのがわかると思います。

Docker Containerの一覧を取得する

起動中のDocker Containerの一覧を取得するためには、 docker container ps を実行します。

<実行例>

SSHするのに CONTAINER ID か NAMES を使用します。今回はgitlab(上)にSSHしてみます。

コンテナID「h762opl971kj」をコピっておきます。

Docker ContainerにSSH

Docker ContainerにSSHするには docker-machine ssh CONTAINER-ID を実行します。

docker exec -it h762opl971kj bash

<実行例>

コンテナIDで実行した例

 

コンテナ名で実行した例

 

コンテナID、コンテナ名どちらを使用してもコンテナ内に入れることが確認できます。

コンテナにSSHする際の注意点

Docker Toolboxを使用している場合、Docker Quickstart Terminalで実行しないとSSHできませんでした。

<実行例>

gitbashで実行してみた結果。

 

SSHがうまくいかない場合、実行している環境を確認してみると良いかもしれません。