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

Dockerでcommitしてみる

More than 5 years have passed since last update.

docker_logo.png

以前Docker上でCentOSを動かしてみましたが、今度はcommitして新しいイメージを作成してみる。

コンテナ起動

まずはコンテナを起動する。名前はdefaultとします。

core@core-01 ~ $ docker run -i -t -d --name="default" centos /bin/bash

起動確認

core@core-01 ~ $ docker ps

CONTAINER ID  IMAGE          COMMAND    CREATED        STATUS        PORTS  NAMES
55082e783e5f  centos:latest  /bin/bash  2 seconds ago  Up 1 seconds         default

コンテナに接続

docker attachコマンドでコンテナに接続します。
接続先の指定は コンテナID, コンテナ名 どちらでも可能。

core@core-01 ~ $ docker attach default

bash-4.1#

接続したら検証用にApacheをインストールしておく。

bash-4.1# yum -y install httpd

コミット(イメージ作成)する

まずはctl+pctl+qでコンテナから抜ける。

docker commitコマンドでdefaultというコンテナをhttpdという名前のイメージとして保存する。

core@core-01 ~ $ docker commit default httpd

docker imagesコマンドで確認すると、httpdという名前のイメージができていることが確認できる。

core@core-01 ~ $ docker images

REPOSITORY  TAG     IMAGE ID      CREATED         VIRTUAL SIZE
httpd       latest  097a51f5048a  35 minutes ago  205.4 MB
centos      latest  0c752394b855  3 weeks ago     124.1 MB

同一リポジトリにhttpdタグを付与して管理する場合には次のようにオプションを指定する。

core@core-01 ~ $ docker commit default centos:httpd
core@core-01 ~ $ docker images

REPOSITORY  TAG     IMAGE ID      CREATED         VIRTUAL SIZE
centos      httpd   78620a15284f  4 seconds ago   205.4 MB
centos      latest  0c752394b855  3 weeks ago     124.1 MB

イメージを削除する

docker rmiコマンドでイメージを削除する。
ちなみに、起動中のコンテナで使用しているイメージは削除できないみたいです。

core@core-01 ~ $ docker rmi httpd

Untagged: httpd:latest
Deleted: 097a51f5048a2dd7a6aa6776feb36c2bfaaba963ec9259bba1bf840b80d446c7

まとめ

Docker Commitする場合は docker commit <コンテナ名/ID> <イメージ名>:<タグ名> で行う。

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
ユーザーは見つかりませんでした