Dockerは、ソフトウェアのコンテナ化技術を提供するプラットフォームです。コンテナを使用することで、アプリケーションとその依存関係をパッケージ化し、一貫した環境で実行できるようになります。
ここではDockerを簡単に扱えるDocker Desktopをインストールしていきます。
Dockerの主な特徴
コンテナ
- コンテナは、アプリケーションとその依存関係を含む軽量な実行環境です。
- 仮想マシンよりも軽量で、リソースの消費が少ないです。
イメージ
- Dockerイメージは、コンテナを作成するためのテンプレートです。アプリケーションとその依存関係を含む静的なファイルです。
- イメージはDocker Hubなどのリポジトリに保存され、共有できます。
Docker Hub
- Docker Hubは、公開およびプライベートのコンテナイメージをホストするためのオンラインリポジトリです。
- ユーザーはDocker Hubからイメージをダウンロードして使用したり、自分のイメージをアップロードして共有できます。
移植性
- Dockerコンテナは、どの環境(開発、テスト、本番など)でも一貫して動作します。
- これにより、環境間の差異による問題を解消できます。
軽量で高速
- コンテナはホストOSのカーネルを共有するため、仮想マシンよりも軽量で高速に起動します。
Docker Desktopインストール
インストール完了後は再起動になるので起動させているソフト類は閉じておいてください。
Docker Desktopをインストールします。まずDockerのサイトからソフトウェアをダウンロードします。
Docker Desktop: The #1 Containerization Tool for Developers | Docker
Download for Windows
ダウンロード完了後インストラーを起動します。
起動して暫くするとConfiguration画面が表示されます。そのまま「OK」ボタンを押します。
インストール完了したら「Close and restart」を選択します。
PC再起動になります。
再起動後以下の図のようなものが立ち上がります。
「Accept」をクリックします。
サインアップ作成を促されますがサインアップは無くても可能です。サインアップ必要ない場合は「Continue withhout signing in」(サインインせずに続行)を選択します。
アンケートの記入が表示されますがアンケートに答える場合と答えたくない場合の「Skip survery」があります。どちらか選んで進めてください。
以上でインストールは完了になります。
DockerのCUIの基本コマンド
Windows上でDockerを使用するための基本的なCUI(Character User Interface)コマンドを紹介します。
これらのコマンドは、Windowsのコマンドプロンプト(cmd)やPowerShell、Windows Terminalなどで実行できます。
Dockerの基本コマンド
項目 | コマンド | 内容 |
---|---|---|
Dockerのバージョン確認 | docker –version | Dockerのインストールが 正しく行われたかを確認するための コマンドです。 |
Dockerイメージの取得 | docker pull [イメージ名] | 例:docker pull ubuntu |
コンテナの実行 | docker run [オプション] [イメージ名] | 例:docker run -it ubuntu /bin/bash |
実行中のコンテナの一覧表示 | docker ps | 実行中のコンテナの一覧が表示されます。 |
すべてのコンテナの一覧表示 | docker ps -a | すべてのコンテナの一覧が表示されます。 |
コンテナの停止 | docker stop [コンテナID] | 例:docker stop 00d1bd49dd01 |
コンテナの削除 | docker rm [コンテナID] | 例:docker rm 00d1bd49dd01 |
Dockerイメージの一覧表示 | docker images | Dockerイメージの一覧表示されます。 |
Dockerイメージの削除 | docker rmi [イメージID] | 例:docker rmi 00d1bd49dd01 |
コンテナのログを見る | docker logs [コンテナID] | 例:docker logs 00d1bd49dd01 |
コンテナの状態を確認 | docker inspect [コンテナID] | 例:docker inspect 00d1bd49dd01 |
コンテナに再接続 | docker attach [コンテナID] | 例:docker attach 00d1bd49dd01 |
Dockerボリュームの一覧表示 | docker volume ls | Dockerボリュームの一覧表示されます。 |
Dockerネットワークの一覧表示 | docker network ls | Dockerネットワークの一覧表示が表示されます。 |
コンテナのシェルにアクセス | docker exec -it [コンテナID] /bin/bash | 例:docker exec -it 00d1bd49dd01 /bin/bash |
基本的なコマンドの一覧ですが具体的なコンテナの作成はDocker Composeを使います。
Docker Composeの主な機能
設定ファイルによるサービス定義: Docker Composeでは、docker-compose.ymlというYAML形式の設定ファイルを使用して、アプリケーションの各サービス(コンテナ)を定義します。この設定ファイルには、各サービスのイメージ、環境変数、ボリューム、ネットワーク設定などを記述します。
一括起動と管理: docker-compose.ymlファイルに定義された全てのサービスを一つのコマンドで起動・停止・再起動できます。これにより、複数のコンテナを手動で個別に管理する手間が省けます。
環境変数の設定: コンテナの設定に必要な環境変数をファイルにまとめて定義し、docker-compose.ymlファイル内で参照することができます。これにより、環境ごとの設定を簡単に切り替えることができます。
ネットワークの管理: Composeはサービス間のネットワークを自動的に設定します。これにより、異なるサービス間で簡単に通信ができるようになります。
ボリュームの管理: ボリュームを使用して、データの永続化やホストマシンとのファイル共有を簡単に設定できます。
コンテナの作成は以下のリンクで解説します。
Dockerコンテナ作成 MySQL – イガシス研究所 (igasys.net)