最近Dockerを使うことが増えてきたので .
基本的な使い方のメモ程度に .
コンテナの作成、起動 .
$ docker run <オプション> <イメージ名> コマンド
.
例: ubuntuコンテナを作る .
$ docker run -it ubuntu /bin/bash
.
オプション
-i : 標準入力
-t : ttyの割当
- d : コンテナをバックグラウンドで実行
- p : ホスト側とのポート接続 ex. -p ホスト:コンテナ
- e : コンテナに環境変数を設定 ex. -e 環境変数名=値
--name : コンテナに名前をつける ex. --nama コンテナ名
--link : コンテナ同士を連携させる ex. --link リンクさせたいコンテナ名:エイリアス
例: ubuntuのコンテナをコンテナ名ubuntu、ポート8080と80を接続、bashを起動させる .
$ docker run -it -p 8080:80 --name ubuntu /bin/bash
.
コンテナの確認 .
起動中のコンテナの確認 .
$ docker ps
.
すべてのコンテナの確認 .
$ docker ps -a
作成済みのコンテナの起動 .
$ docker start <コンテナ名 or コンテナID>
起動中のコンテナの停止 .
$ docker stop <コンテナ名or コンテナID>
.
起動中のすべてのコンテナを停止させる .
$ docker stop `docker ps -q`
.
起動中のコンテナへ接続 .
$ docker exec オプション <コンテナ名 or コンテナID> コマンド
.
例: 起動中のコンテナ(コンテナ名:ubuntu)への接続、bashを起動 .
$ docker exec ubuntu /bin/bash
.
コンテナイメージの取得 .
基本的にはDockerHubから取得される .
$ docker pull イメージ名:タグ名
.
例:ubuntu14.04 のイメージを取得する .
$ docker pull ubuntu:14.04
.
docker pull
をせずに docker run
をした場合はコンテナ作成時にイメージを取得する .
Dockerイメージの確認 .
docker pull
または作成したイメージの確認 .
$ docker images
.
コンテナの削除 .
$ docker rm <コンテナ名 or コンテナID>
.
Dockerイメージの削除 .
` $ docker rmi <イメージ名:タグ> .
ホスト側とコンテナでファイルをコピーする
ホストからコンテナへ
$ docker cp ファイル名 <コンテナ名 or コンテナID>:ディレクトリ/ファイル名
例:ホスト側ファイル:hoge.txt を コンテナ名:ubuntu ファイルディレクトリtmp/hoge.txt へコピー
$ docker cp hoge.txt ubuntu:tmp/hoge.txt
コンテナからホストへ
$ docker cp <コンテナ名 or コンテナID>:ディレクトリ/ファイル名 ホスト側ファイル名
例:コンテナ名:ubuntu ファイルディレクトリtmp/hoge.txtをホスト側ファイル:hoge.txt へコピー
$ docker cp ubuntu:tmp/hoge.txt hoge.txt
Dockerイメージの作成(コミット) .
$ docker commit コンテナ名 イメージ名
.
例: コンテナ名:ubuntu を イメージ名:myubuntu タグ:01 でイメージを作る .
$ docker commit ubuntu myubuntu:01
.
作成したイメージをDockerHubにプッシュする .
- DockerHubでアカウントを作成 .
DockcerでDockerHubにログインする .
$ docker login
イメージの作成
$ docker commit コンテナ名 DockerHubのID/イメージ名
.
例: ユーザー名:hoge コンテナ名:ubuntu イメージ名:myubuntu タグ:01 .
$ docker commit ubuntu hoge/myubuntu:01
.DockerHubへプッシュする .
$ docker push hoge/myubuntu:01
.
以上、だいたい自分がよく使うDockerのコマンド