今更ながらDockerを使う機会が出てきたので、Hello World的なDokerfileを作って実行するまでの備忘録です。
環境
メイン機はWindowsで、MacはサブPCとして使っているので古めのスペックです。
- PC : MacBook Air (13-inch, Early 2015)
- OS : macOS Monterey 12.6.2
- CPU : Intel Core i5 (x86)
Docker Desktopのインストール
MacにDocker Desktopをインストールしていきます。homebrewでもインストールできるようですが、とりあえずは公式ドキュメントに従ってインストールしていきます。(今回はDocker DesktopのGUIは使いませんが、一緒にDockerの実行環境もインストールできるので)
私の使っているMacはIntelのCPU搭載のものなので、以下公式ドキュメントの「Mac with Intel chip」ボタンからDocker.dmg
をダウンロード、インストールするだけです。
Mac
Install Docker for Mac to get started. This guide covers system requirements, where to download, and instructions on how...
インストールしたDockerアプリを起動すると利用条件的なことが書いた画面が表示されますが、今回は個人利用が目的で無償利用できる範囲内なので「accept」ボタンを押します。
これでインストールは完了です。
Dokerfileの作成
Dockerfile
というファイル名のテキストファイルを作成します。とりあえず最小限の以下の内容を記述します。
# 必須項目。ベースとなるイメージ。今回はubuntuの20.04を選択
FROM ubuntu:20.04
# コンテナ起動後に実行するコマンド
CMD echo "Hello World!!"
今回はベースのイメージにはubuntuを利用します。
https://hub.docker.com/_/ubuntu
イメージの作成
作成したDokerfileを以下のコマンドでビルドします。
# カレントディレクトリのDockerfileからhelloworldという名前のイメージを作成する
$ docker build -t helloworld .
イメージ一覧を表示して、イメージが作成されていることを確認します。
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
helloworld latest bdc0073740d3 3 weeks ago 72.8MB
コンテナの作成
作成したイメージからコンテナを作成します。
# helloworldというイメージからecho_helloworldというコンテナを作成する
$ docker create --name echo_helloworld helloworld
コンテナ一覧を表示して、コンテナが作成されていることを確認します。
# -aオプションをつけることで、実行中のコンテナだけでなくすべてのコンテナを表示できる
$ docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7eaa2f8e2ec5 helloworld "/bin/sh -c 'echo \"H…" 8 seconds ago Created echo_helloworld
コンテナの実行
作成したコンテナを実行します。
$ docker start -a echo_helloworld
Hello World!!
参考:
【図解】Dockerの全体像を理解する -前編- - Qiita
この記事は何かイメージやコンテナなどの基本からdocker-compose、docker-machine, docker swarmなどのDocker周りの様々な概念の全体像を整理して、Dock…
docker container ls
docker container ls: コンテナーを一覧表示します。
docker start
docker start: 停止しているコンテナーを起動します。
コメント