Help us understand the problem. What is going on with this article?

Docker上でCentOSを動かす

More than 5 years have passed since last update.

docker_logo.png

CoreOSのDocker上でCentOSを動かしてみる。
CoreOS環境の準備についてはこちら

環境について

Docker: 1.0.0
CoreOS: 353.0.0

なお、CoreOSのバージョンは/etc/os-releaseに記載してある。

core@core-01 ~ $ cat /etc/os-release

NAME=CoreOS
ID=coreos
VERSION=353.0.0
VERSION_ID=353.0.0
BUILD_ID=
PRETTY_NAME="CoreOS 353.0.0"
ANSI_COLOR="1;32"
HOME_URL="https://coreos.com/"
BUG_REPORT_URL="https://github.com/coreos/bugs/issues"

Docker Image の取得

docker pullコマンドでimageを取得する。
今回はCentOSの最新バージョンを取得している。

core@core-01 ~ $ docker pull centos:latest

Pulling repository centos
0c752394b855: Download complete
511136ea3c5a: Download complete
34e94e67e63a: Download complete

取得したイメージはdocker imagesコマンドで確認できる。

core@core-01 ~ $ docker images

REPOSITORY     TAG            IMAGE ID       CREATED        VIRTUAL SIZE
centos         latest         0c752394b855   3 weeks ago    124.1 MB

コンテナ(仮想マシン)を起動する

取得したコンテナはdocker runコマンドで起動する。

core@core-01 ~ $ docker run centos /bin/echo ok

ok

これは「 centos というコンテナで /bin/echo ok というコマンドを実行する」という意味になる。

今度は起動したコンテナの中に入るために、-i と -t オプションで入出力できるようにして /bin/bash を起動する。

core@core-01 ~ $ docker run -i -t centos /bin/bash

bash-4.1# exit

exitで抜けるとコンテナは終了する。

今度は -d オプションでコマンドを実行したままにする。

core@core-01 ~ $ docker run -i -t -d centos /bin/bash

330ec265ad9dcb22ef21d1cf63470d07ef39907bdd759fb2a8e0c1a6350ea0c3

起動しているコンテナはdocker psコマンドで確認できる。

core@core-01 ~ $ docker ps

CONTAINER ID  IMAGE          COMMAND    CREATED         STATUS         PORTS  NAMES
330ec265ad9d  centos:latest  /bin/bash  42 seconds ago  Up 41 seconds         lonely_rosalind

コンテナの操作を行うときは "CONTAINER ID" か "NAMES" で行うが、"NAMES"は指定がない場合にはランダムに設定される。
指定したい場合には--name="<コンテナ名>"オプションが必要。

コンテナに接続する

コンテナに接続するにはdocker attachコマンドを使用する。

core@core-01 ~ $ docker attach 330ec265ad9d

bash-4.1#

接続したコンテナから抜けるにはctl+pctl+qを押す。
exitすると終了する。

コンテナを削除する

実行中のコンテナを削除する場合にはdocker killコマンドを使用する。

core@core-01 ~ $ docker kill 330ec265ad9d

330ec265ad9d

docker psコマンドで確認してみる。

core@core-01 ~ $ docker ps

CONTAINER ID  IMAGE          COMMAND    CREATED         STATUS         PORTS  NAMES

起動されているコンテナがいなくなっているから削除されたっぽい。

次はdocker commitなどをやってみることにする。

mats16
AWSでSolutions Architectをやっています。 投稿は、個人の意見であり、所属する企業や団体は関係ありません。お約束です。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした