Dockerとは何か?言葉の説明よりも、実際に使ってみると理解が深まります。
ここでは、Docker Hub から Ubuntu 18.04 のイメージを取得して、実際に動かしてみます。
目次
イメージをレジストリから取得
イメージは、 Docker Hub に登録されています。
Ubuntuの公式イメージは、 https://hub.docker.com/r/library/ubuntu/ にて確認できます。
まず、こちらのイメージをローカルに取り込みます。
docker image pull コマンドを利用します。
docker image pull [OPTIONS] NAME[:TAG|@DIGEST]
$ docker image pull ubuntu:18.04
18.04: Pulling from library/ubuntu
124c757242f8: Pull complete
2ebc019eb4e2: Pull complete
dac0825f7ffb: Pull complete
82b0bb65d1bf: Pull complete
ef3b655c7f88: Pull complete
Digest: sha256:72f832c6184b55569be1cd9043e4a80055d55873417ea792d989441f207dd2c7
Status: Downloaded newer image for ubuntu:18.04
docker image ls
でローカルに取得したイメージを確認できます。
$ docker image ls|grep ubuntu|grep 18.04
ubuntu 18.04 16508e5c265d 5 days ago 84.1MB
コンテナを実行
取得したイメージをもとに、コンテナを実行します。
docker container run コマンドを利用します。
docker container run [OPTIONS] IMAGE [COMMAND] [ARG...]
$ docker container run -it -d --name ubuntu1804 ubuntu:18.04
1f6b6f82ba5e77f4225b22ee5273cad997168fcf09c671ad2ad55577a97536ef
docker container ls
で起動中のコンテナを確認できます。
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1f6b6f82ba5e ubuntu:18.04 "/bin/bash" 2 minutes ago Up 2 minutes ubuntu1804
コンテナ内のBashを起動
コンテナ内のBashを起動してみます。
コンテナ内でコマンド実行するには、 docker container exec コマンドを利用します。
docker container exec [OPTIONS] CONTAINER COMMAND [ARG...]
$ docker container exec -it ubuntu1804 /bin/bash
root@1f6b6f82ba5e:/#
root@1f6b6f82ba5e:/# uname -a
Linux 1f6b6f82ba5e 4.9.93-linuxkit-aufs #1 SMP Wed Jun 6 16:55:56 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
root@1f6b6f82ba5e:/#
root@1f6b6f82ba5e:/# exit
$
コンテナを止める
コンテナを止めるには、docker container stop コマンドを利用します。
docker container stop [OPTIONS] CONTAINER [CONTAINER...]
$ docker container stop ubuntu1804
ubuntu1804