Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
226
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

Dockerでコンテナ作成/起動/停止/自分用Image作成


公式リポジトリ(大体ここに書いてある)

※参考サイト
http://kasshy.hatenablog.com/entry/2015/01/21/142120
http://qiita.com/deeeet/items/ed2246497cd6fcfe4104
http://qiita.com/bungoume/items/b8911fd243d9c084bd63


CentOS6のDockerイメージのダウンロード

$ docker pull centos:centos6

$ docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
centos              6.6                 77e369743e24        12 days ago         202.6 MB

Dockerコンテナを作成してバックグラウンドで起動する

docker run [オプション] [--name {コンテナー名}] {イメージ名}[:{タグ名}] [コンテナーで実行するコマンド] [引数]

例)ホスト名を指定して作成する場合
docker run -d -it -p 50080:80 --hostname tomi-local01 --name tomi-local01 centos:6.6 /bin/bash --login

d: バックグランドで実行
i: コンテナの標準入力を開く
t: ttyを確保する
p: ポートフォワード

起動しているコンテナを確認

docker ps -a

a: 停止しているコンテナも表示

起動しているコンテナに接続(attach)

docker attach <コンテナID or NAME>

→ログアウトはctrl+p → ctrl+q の順に押す。
注意: exitするとコンテナが終了する。。こわい。


ポートフォワードしているポートへの接続方法

例)-p 50080:80 で起動してあるコンテナ内のnginxにつなぐ場合

まずboot2docker-vmのipを調べる
$ boot2docker ip
192.168.59.103

boot2dockerのipに対して以下のように接続する
http://192.168.59.103:50080
 → -p 50080:80 で起動しているコンテナ内のport80にフォワードされる。

  

コンテナの停止

docker stop <コンテナID or NAME>


コンテナの起動

docker start <コンテナID or NAME>


自作のDocker Imageを作る

コンテナの状態を確認
$ docker ps -a

Docker Imageを作成
$ docker commit -m "Development Tools追加" <コンテナID> tomi-centos-templage:6.6
 ※docker commit -m "コメント" <コンテナID> <名前:タグ>

Docker Imageが追加されたことを確認
$ docker images

    REPOSITORY             TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
tomi-centos-template   6.6                 fbb6f8fa1abf        8 seconds ago       692.7 MB
centos                 6.6                 77e369743e24        12 days ago         202.6 MB

自作のDocker Imageからコンテナ作成

例)
$ docker run -d -it --hostname tomi-local02 --name tomi-local02 tomi-centos-template:6.6

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
226
Help us understand the problem. What are the problem?