DockerをHomebrewでインストールします。以下のコマンドを入力してDockerをインストールします。
ちなみに、「Docker=ドッカー」と読みます。
スポンサーリンク
Dockerのインストール
brew install docker
続いて、DockerのGUIアプリケーションをインストールします。以下のコマンドを入力します。
brew cask install docker
インストール完了後、「docker was successfully installed!」が表示されれば、インストール成功です。
Docker for Macを起動する
インストールが完了すると、MacのアプリケーションにDockerのアプリが追加されます。アイコンをダブルクリックしてDockerを起動しましょう。
初回起動時のみ、次のイメージのような警告メッセージが表示されます。 [開く] をクリックしてアプリを起動しましょう。
いくつか確認メッセージが出た後、管理者パスワードの入力を求められるので、入力しましょう。
Dockerが起動されると、MacのメニューバーにDockerのアイコンが表示されます。また、起動と同時にDocker Hubのアカウントを求められますので、ログインしておきましょう。Docker Hubアカウントを持っていない場合は、こちらからアカウントを作成してください。
メニューバーのDockerのアイコンをクリックすると、Dockerのメニューが表示されます。Docker起動中は、次のイメージのように 「Docker Ddesktop is running」 と表示されます。
スポンサーリンク
コンテナを起動する
Dockerを起動したら、基本の「hello-world」コンテナを起動してみましょう。以下のコマンドを入力してコンテナを起動します。
docker run hello-world
以下のようの「Hello from Docker!」と表示されれば、起動成功です。
Docker for Macを終了する
Docker for Macを終了するには、メニューバーから [Quit Docker Desktop] を選択します。
Dockerコンテナを停止する
先述した「hello-world」コンテナは、起動時にメッセージを表示してすぐに停止するため、明示的に停止する必要はありませんでした。しかし、nginxなどのコンテナの場合、明示的に停止コマンドを発行するまで、コンテナは起動し続けます。
コンテナを停止するには、以下のコマンドを使用します。
docker stop <CONTAINER ID>
停止するコンテナのCONTAINER IDを検索する
停止するコンテナの<CONTAINER ID>
が分からない場合は、次のコマンドで探します。
docker ps
スポンサーリンク
Dockerのコンテナを削除する
コンテナの削除には、以下のコマンドを使用します。削除するコンテナの<CONTAINER ID>
を指定してコンテナを削除します。
docker rm <CONTAINER ID>
削除するコンテナのCONTAINER IDを検索する
削除するコンテナの<CONTAINER ID>
が分からない場合は、docker ps
を使用します。。-a
オプションを付けると、停止中のコンテナも検索できます。
docker ps -a
【docker psの実行結果】
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a507ad98e180 hello-world "/hello" 15 hours ago Exited (0) 15 hours ago relaxed_lewin
すべてのコンテナを削除する
コンテナの起動を繰り返していると、知らぬ間にコンテナが大量に作成され、docker ps -a
でコンテナ一覧を確認すると、大変なことになっている事がよくあります。そんな時に便利なのが、すべてのコンテナを削除するコマンドです。
以下のコマンドを入力する事で、Dockerのすべてのコンテナを削除できます。
docker rm $(docker ps -aq)
スポンサーリンク
Dockerのイメージを削除する
docker rm
でコンテナを削除しただけでは、Dockerイメージまでは削除されません。Dockerのイメージをするには、以下のコマンドを使用します。<IMAGE ID>
を指定してコンテナを削除します。
docker rmi <IMAGE ID>
削除するイメージのIMAGE IDを検索する
削除するコンテナの<IMAGE ID>
が分からない場合は、次のコマンドで探します。
docker images
【docker imagesの実行結果】
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest fce289e99eb9 6 months ago 1.84kB
イメージの削除時にエラーになる場合
docker rmi
コマンドでイメージを削除する時に、以下のようなエラーが表示されることがあります。このメッセージは、削除するイメージのコンテナが、起動または停止中で残っている場合に表示されるメッセージです。
Error response from daemon: conflict: unable to delete fce289e99eb9 (must be forced) - image is being used by stopped container 9f128e7b5c6b
強制的にイメージを削除する場合は、force(-f)オプションをつける事で削除できます。
docker rmi -f <IMAGE ID>
すべてのイメージを削除する
Dockerからすべてのイメージを削除するには、以下のコマンドを使用します。
全部消えるので、注意して使いましょう。
docker rmi -f $(docker images -q)
Docker for Macでよく使うコマンド
ここからは、Docker for Macでよく使うコマンドを紹介していきます。
Dockerのバージョンを確認する
Dockerのバージョンを確認するコマンドです。
docker --version
起動中のコンテナを表示する
Dockerで起動中のコンテナの一覧を表示するコマンドです。
docker ps
【実行結果】
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
「hello-world」コンテナは、メッセージを表示したら終了するコンテナのため、起動中のコンテナには表示されません。
停止中のコンテナも含めてコンテナの一覧を表示する場合、-a
オプションを指定します。
docker ps -a
【実行結果】
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a507ad98e180 hello-world "/hello" 40 seconds ago Exited (0) 38 seconds ago relaxed_lewin
保存されたコンテナイメージを表示する
ローカル環境に保存した、コンテナイメージを一覧表示するコマンドです。
docker images
【実行結果】
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest fce289e99eb9 6 months ago 1.84kB
Dockerの情報を取得する
Dockerについての情報を取得するコマンドです。
docker info
【実行結果】
Containers: 3
Running: 0
Paused: 0
Stopped: 3
Images: 1
Server Version: 18.09.2
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
~~以降省略~~
終了時にコンテナ自動的に削除 (–rm)
終了時にコンテナを自動的に削除するには、--rm
を使用します。このオプションを指定するとdocker ps -a
で消されずに残っているコンテナが大量発生するのを防げます。
docker run -it --rm ubuntu /bin/bash
0 件のコメント:
コメントを投稿