技術

【Docker/Mac】Dockerコマンド

投稿日:2016年5月19日 更新日:

どうも中田です。

今回はDocker。
巷でよく話には出てましたが使ってみるとめちゃ便利。
雑ですが、作業で使いそうなコマンドをピックアップ!

 
 

■事前準備

・VirtualBoxのインストール
・Docker-toolboxのインストール(Docker Tookbox

 
 
 

■VM操作(docker-machine)

VM作成

$ docker-machine create --driver virtualbox default

VM一覧

$ docker-machine ls

VM開始

$ docker-machine start default

VM環境設定確認

$ docker-machine env default

シェルをdefalutのVMにつなぐ

$ eval "$(docker-machine env default)"

hello-worldコンテナ実行

$ docker run hello-world

 

※この辺はDocker Quick Start Terminal.app を実行したら自動的に実施されるのですが、
手動でやるとしたらこうってことです。

 
 
 

■イメージ操作(docker)

イメージ検索

$ docker search ubuntu

イメージ取得

$ docker pull ubuntu
$ docker pull ubuntu:12.04 <--バージョン指定

イメージ登録

$ docker push ubuntu

イメージ削除

$ docker rmi *image_id*

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

$ docker commit *container_id* *image_name*

イメージエクスポート

$ docker save *image_id* > filename.tar

イメージインポート

$ docker load < filename.tar

 

イメージからコンテナ生成(docker run)

ホスト名付与(-h)

$ docker run -h *hostname* -i -t ubuntu /bin/bash

ポートフォワード(host:8080 -> guest:80)

$ docker run -i -t -p 8080:80 ubuntu /bin/bash

コンテナ名付与(–name)

$ docker run --name *container_name* -i -t ubuntu /bin/bash

起動後のインタラクティブモード(-i)

$ docker run -i -t ubuntu /bin/bash

終了時のコンテナ破棄(-rm)

$ docker run --rm -t -i ubuntu /bin/bash

CPU使用率指定(-c)

$ docker run -c 200 -i -t ubuntu /bin/bash

メモリ指定(-m)

$ docker run -m 512m -i -t ubuntu /bin/bash

コンテナバックグラウンド起動(-d)

$ docker run -i -t -d ubuntu /bin/bash

ホストディレクトリのマウント

$ docker run -v /home/user/dir:/root/dir

 
 
 

■コンテナ操作

コンテナ一覧

$ docker ps -a

コンテナ起動

$ docker start -a *container_id*
-a は “attach”

コンテナ停止

$ docker stop *container_id*

コンテナ再起動

$ docker restart *container_id*

コンテナログイン(起動中コンテナ)

$ docker attach --sig-proxy=false *container_id*

コンテナ削除

$ docker rm *container_id*

コンテナ全削除

$ docker rm $(docker ps -a -q)

コンテナエクスポート

$ docker export *container_id* > filename.tar

コンテナインポート(URL)

$ docker import url *image_id*

コンテナインポート(ファイル)

$ cat filename.tar | docker import - *image_id*

コンテナからイメージ作成(コミット)

$ docker commit *container_id* *image_name*

 
 

脳内イメージ

IMG_3047

-技術
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

ASCIIコード表のMarkdown(転用可能)

どうも中田です。 特に意味はないですが、ASCIIコード表をMarkdownで作 …

[Xcode] SDK Version Issue – This app was built with the iOS 12.0 SDK. Starting March 2019, all iOS apps submitted to the App Store must be built with the iOS 12.1 SDK or later, included in Xcode 10.1 or later.

こんにちは。たなかです。 2019年、ブログ初更新になります。今年もよろしくお願 …

no image

【Rails】productionモードでCSSの画像が表示されない

どうも中田です。 css内で画像を設定して、productionモードで動かすと …

[Angular6] Angularのユニットテストでprivate変数を読み込む

Angularでテストコードを書いている時、component側で定義しているp …

「Google Inside Music」で自分の好きな音楽を聞いてみる(local環境構築 編)

以前紹介した「Google Inside Music」。 「Google Ins …