13
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

DockerでUbuntuコンテナを起動する

Last updated at Posted at 2021-03-12

#環境

  • MBP
  • Catalina
  • DockerForMac

#Ubuntuのイメージ取得~コンテナの起動

これだけでUbuntuが起動しました。
実際に利用するときは「--name」でコンテナ名を明示的に指定しましょう。

尚、/bin/bash は省略しても問題ありません。
-itを忘れるとコンテナを起動してもUbuntuの操作が出来ませんので、忘れないように注意して下さい。

% docker run -it ubuntu /bin/bash                                
Unable to find image 'ubuntu:latest' locally
latest: Pulling from library/ubuntu
5d3b2c2d21bb: Already exists 
3fc2062ea667: Already exists 
75adf526d75b: Already exists 
Digest: sha256:b4f9e18267eb98998f6130342baacaeb9553f136142d40959a1b46d6401f0f2b
Status: Downloaded newer image for ubuntu:latest

root@3e393476b56a:/# cat /etc/os-release 
NAME="Ubuntu"
VERSION="20.04.2 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.2 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

root@3e393476b56a:/# ls
bin  boot  dev  etc  home  lib  lib32  lib64  libx32  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

#ホストOSに切り替える

Ctrl + p Ctrl + q を押すとホストに切り替えられます。

#ホストからコンテナの状態を確認する

STATUSがUPになっているのが確認出来ます。

% docker ps -a 
CONTAINER ID   IMAGE     COMMAND       CREATED         STATUS         PORTS     NAMES
3e393476b56a   ubuntu    "/bin/bash"   2 minutes ago   Up 2 minutes             optimistic_easley

#タグの確認

タグ名を指定しなかったので、自動でlatestタグのイメージが取得されています。

% docker images
REPOSITORY   TAG       IMAGE ID       CREATED      SIZE
ubuntu       latest    4dd97cefde62   8 days ago   72.9MB

#Ubuntuに操作を戻す(attachする)

% docker attach 3e

root@3e393476b56a:/# cat /etc/os-release 
NAME="Ubuntu"
VERSION="20.04.2 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.2 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

root@3e393476b56a:/# 

このようにコンテナIDの最初一部を指定するだけでコンテナを指定出来る。
尚、これはコンテナを削除する docker rm などでも同様に使える。

#再度ホストに戻る

root@3e393476b56a:/# exit
exit

% docker ps -a
CONTAINER ID   IMAGE     COMMAND       CREATED         STATUS                      PORTS     NAMES
3e393476b56a   ubuntu    "/bin/bash"   5 minutes ago   Exited (0) 10 seconds ago             optimistic_easley

今度はExitでプロセスを終了させて抜けた為、STATUSがExitedとなり、コンテナの動作が停止していることが確認出来る。

#停止したコンテナを削除する

コンテナはコンテナIDの頭2文字で指定している。

% docker rm 3e
3e

#dockerイメージを削除する

% docker images
REPOSITORY   TAG       IMAGE ID       CREATED      SIZE
ubuntu       latest    4dd97cefde62   8 days ago   72.9MB

% docker rmi ubuntu
Untagged: ubuntu:latest
Untagged: ubuntu@sha256:b4f9e18267eb98998f6130342baacaeb9553f136142d40959a1b46d6401f0f2b
Deleted: sha256:4dd97cefde62cf2d6bcfd8f2c0300a24fbcddbe0ebcd577cc8b420c29106869a
Deleted: sha256:95bc1f83306cc7ebaa959492929d6624b0cc1bb6ba61be1cd04fed7d39b002fc
Deleted: sha256:a0fcf305193749a4fe8c9da074c4781a0f1e63f2c5b5a979a88597ada5c74645
Deleted: sha256:aeb3f02e937406fb402a926ce5cebc7da79b14dbcb4f85a5ce0e3855623cec80

% 

#execコマンドについて

通常コンテナ内でシェルを操作していて、exitを実行すると下記のようにコンテナは終了状態となり、停止してしまう。
これを避けるために、docker execコマンドがある。

% docker run -it ubuntu          
Unable to find image 'ubuntu:latest' locally
latest: Pulling from library/ubuntu
5d3b2c2d21bb: Pull complete 
3fc2062ea667: Pull complete 
75adf526d75b: Pull complete 
Digest: sha256:b4f9e18267eb98998f6130342baacaeb9553f136142d40959a1b46d6401f0f2b
Status: Downloaded newer image for ubuntu:latest

root@7c9389b7d90e:/# 
root@7c9389b7d90e:/# 
root@7c9389b7d90e:/# 
root@7c9389b7d90e:/# exit
exit

% docker ps -a
CONTAINER ID   IMAGE     COMMAND       CREATED              STATUS                      PORTS     NAMES
7c9389b7d90e   ubuntu    "/bin/bash"   About a minute ago   Exited (0) 19 seconds ago             hungry_newton

#execコマンドでコンテナを操作する

% docker exec -it 7c /bin/bash
root@7c9389b7d90e:/# 

root@7c9389b7d90e:/# cat /etc/os-release 
NAME="Ubuntu"
VERSION="20.04.2 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.2 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

root@7c9389b7d90e:/# 

#exitで抜けてコンテナのSTATUSを確認する

このようにSTATUSがUPのままで起動状態であることが確認できる。

root@7c9389b7d90e:/# exit
exit

% docker ps                              
CONTAINER ID   IMAGE     COMMAND       CREATED         STATUS              PORTS     NAMES
7c9389b7d90e   ubuntu    "/bin/bash"   4 minutes ago   Up About a minute             hungry_newton

#コンテナを停止する

% docker stop 7c
7c

#停止中のコンテナをまとめて削除する(docker container prune)

% docker container prune
WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N] y
Deleted Containers:
7c9389b7d90e9bcd0e8eedc74c8eb699c9fac32ae5603189930ff81acbe4d67d

Total reclaimed space: 31B

% docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

#docker imageの削除

% docker rmi ubuntu
Untagged: ubuntu:latest
Untagged: ubuntu@sha256:b4f9e18267eb98998f6130342baacaeb9553f136142d40959a1b46d6401f0f2b
Deleted: sha256:4dd97cefde62cf2d6bcfd8f2c0300a24fbcddbe0ebcd577cc8b420c29106869a
Deleted: sha256:95bc1f83306cc7ebaa959492929d6624b0cc1bb6ba61be1cd04fed7d39b002fc
Deleted: sha256:a0fcf305193749a4fe8c9da074c4781a0f1e63f2c5b5a979a88597ada5c74645
Deleted: sha256:aeb3f02e937406fb402a926ce5cebc7da79b14dbcb4f85a5ce0e3855623cec80

13
8
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
13
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?