| コマンド | 説明 |
|---|---|
| $ exec winpty bash |
CLIにGit for WindowsのGit bashを使っているならこのコマンドを実行しておくように。 たびたび出てくるwinptyがなんたらかんたらというものを回避できる。 |
| $ docker search パッケージ名 | Docker Hubからイメージを検索する。 |
| $ docker search --filter "stars=3" --filter "is-official=true" キーワード |
オフィシャルのパッケージのみ検索する。 pythonのオフィシャルイメージを検索する例 $ docker search --filter "stars=3" --filter "is-official=true" python |
| $ docker pull phpmyadmin/phpmyadmin |
Docker Hubからイメージをダウンロードする。 例ではphpMyAdminをDocker Hubからダウンロード。 |
| $ docker image list | ダウンロードして保持しているイメージ一覧を表示。 |
| $ docker images | 保持しているイメージ一覧を表示。 |
| $ docker run -t -i イメージ名もしくはイメージID |
イメージからコンテナを生成および実行状態にする。 例 $ docker run -t -i python |
| $ docker stop $(docker ps -a -q) | コンテナをすべて停止する。 |
| $ docker start $(docker ps -a -q) | コンテナをすべてスタートする。(停止中のコンテナをすべて再起動) |
| $ docker ps | 稼働中のコンテナ一覧を表示する。 |
| $ docker ps -a | 停止中のコンテナ一覧も表示。 |
| $ docker create -it centos | コンテナのダウンロードだけ行い、実行はしない。(例:centosのダウンロード) |
| $ docker start コンテナIDもしくはコンテナ名 | コンテナを動かす。 |
| $ docker exec -it コンテナ名 bash |
コンテナに接続。アタッチ状態にする(コンテナ内に入る)。 例1(Windows環境) $ winpty docker exec -it docker_demo_mysql_1 bash例2(ついでにコマンドも実行する) $ docker exec -it コンテナ名 bash -c "任意のコマンド" |
| $ docker attach コンテナIDもしくはコンテナ名 | アタッチ状態にする(コンテナ内に入る)。なぜか止まることが多いので、docker execコマンドを使ったほうがいいかも。 |
| $ docker stop コンテナ名もしくはコンテナID | コンテナを停止する。 再び動かすには「docker start xxxxx」。 |
| $ docker inspect コンテナ名もしくはコンテナID |
コンテナの詳細情報を表示する。 マウントしているボリュームや、割り当てIPアドレスなどいろいろな情報が確認可能。 |
| $ docker rm $(docker ps -a -q) | コンテナをすべて削除する。 |
| $ docker rmi イメージ名またはイメージID |
イメージを削除する。 例 docker rmi centos/python-36-centos7 |
| $ docker rmi `docker images -q` |
イメージをまとめて削除する。 |
| #ip a |
IPアドレスすを確認する。(docker execでアタッチ後)
[lancers@app ~]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo ←ローカルIPアドレス(物理NIC)
valid_lft forever preferred_lft forever
2: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
link/ipip 0.0.0.0 brd 0.0.0.0
3: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN group default qlen 1000
link/tunnel6 :: brd ::
18: eth0@if19: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:0a:64:06:0b brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 10.100.6.11/12 brd 10.111.255.255 scope global eth0←仮想IPアドレス?(仮想NIC?)
valid_lft forever preferred_lft forever
|
| docker network ls |
Docker ネットワーク一覧を表示する
$ docker network ls NETWORK ID NAME DRIVER SCOPE 25bdf8f0a638 bridge bridge local 8fb76d054ec2 frontend_default bridge local 8967df4354b4 host host local d6ffaa0b27d7 none null local |
| docker network inspect 「Dockerネットワーク名」 |
Dockerネットワークの詳細情報を表示。 このDockerネットワークを使用しているコンテナも一覧表示している? |
| docker network create --driver=bridge --subnet=20.200.0.0/12 --gateway=20.200.0.1 「任意のDockerネットワーク名」 | Dockerネットワークを作成する。 |
| docker network rm 「Dockerネットワーク名」 | Dockerネットワークを削除する。 |
| docker network prune | 名前のない未使用なDockerネットワークを削除する。 |
| docker network connect --ip 192.168.0.300 Dockerネットワーク名 コンテナ名 | コンテナとDockerネットワークを接続する。 |
| docker network disconnect Dockerネットワーク名 コンテナ名 | コンテナとDocekrネットワークの接続を解除する。 |