LoginSignup
3
1

More than 5 years have passed since last update.

dockerを触ってみた

Posted at

dockerを勉強する機会があったので、dockerを触る上での最低限の知識をまとめておきます。
個人的な解釈もあるので、間違っているとこがありましたらご指摘ください。

インストール

macの方はこちらから
https://docs.docker.com/docker-for-mac/install/

実行環境

$ docker --version
Docker version 17.06.0-ce, build 02c1d87

dockerイメージのダウンロード

$ docker pull centos:7
centosのバージョン7のイメージをダウンロードできます。
: の後ろに来るのはdockerではタグと呼ばれるもので、ここでバージョンを指定します。
省略した場合は最新(latest)が取得できます。

$ docker images
イメージの一覧をみることができます。

REPOSITORY TAG IMAGE ID CREATED SIZE
centos 7 36540f359ca3 9 days ago 193MB

イメージからコンテナを生成して起動する

$ docker run -it centos:7 /bin/bash
[root@a177acecd962 /]#

コンテナが立ち上がり、コンテナ内でシェルを実行することができます。(/bin/bash がコンテナ内で実行されるため)
コンテナを抜けるには、ctrl + d です。

バックグラウンドでコンテナを動かす

$ docker run -d centos:7 /ibn/ping localhost

$ docker ps でコンテナを確認します。

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6a37d030ac72 centos:7 "/bin/ping localhost" 3 seconds ago  Up 2 seconds  fervent_austin

コンテナがバックグラウンドで起動していることが確認できます。
オプションに-dを指定することで、バックグラウンドで実行することができます。

コンテナ内のログを確認するときは、

$ docker logs -t 6a37d030ac72
2017-07-15T05:43:50.442249180Z 64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.035 ms
2017-07-15T05:43:51.456915700Z 64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.046 ms
2017-07-15T05:43:52.492816131Z 64 bytes from localhost (127.0.0.1): icmp_seq=3 ttl=64 time=0.046 ms
~

docker logsコマンドで確認できます。

コンテナを起動したり停止したり

コンテナの起動
$ docker start オプション コンテナID

コンテナの停止
$ docker stop オプション コンテナID

コンテナの再起動
$ docker restart オプション コンテナID

コンテナの削除
$ docker rm コンテナID

イメージの削除
$ docker rmi イメージID

稼働コンテナへの接続
$ docker attach コンテナID

稼働コンテナで別プロセスを実行
$ docker exec コンテナID 実行コマンド
例えば、別プロセスでシェルを起動したかった場合は
$ docker exec -it コンテナID /bin/bash

おまけ

コンテナは起動プロセスがなくなると、コンテナ自体が閉じてしまうようなので、
使い終わった後のコンテナは削除したいときは
$ docker run --rm centos:7 /bin/bash
のように--rmオプションをつけることで、コンテナを自動で削除してくれるようになります。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1