こんにちは。今回は、Docker初心者に向けて、Dockerイメージの作成方法を説明します。
はじめに
Dockerは、アプリケーションをコンテナにパッケージ化することで、環境の違いによるトラブルを回避し、アプリケーションのデプロイを簡単にすることができるツールです。Dockerイメージは、Dockerコンテナを実行するためのテンプレートであり、Dockerイメージを作成することで、アプリケーションのデプロイが迅速かつ簡単になります。
Dockerイメージとは
Dockerイメージは、Dockerコンテナを実行するためのテンプレートです。Dockerイメージは、Dockerfileと呼ばれるテキストファイルに記述された手順に従って、自動的にビルドすることができます。Dockerイメージには、アプリケーションの実行に必要なすべての依存関係が含まれているため、環境の違いによるトラブルを回避することができます。
Dockerイメージの作成方法
Dockerイメージを作成するには、Dockerfileと呼ばれるファイルを作成する必要があります。Dockerfileには、イメージをビルドするための手順が記述されています。以下の例は、Pythonアプリケーションを実行するDockerイメージの例です。
# ベースイメージを指定
FROM python:3.9-slim-buster
# 作業ディレクトリを指定
WORKDIR /app
# アプリケーションの依存関係をインストール
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
# アプリケーションをコピー
COPY . .
# アプリケーションを実行
CMD ["python", "app.py"]
Dockerfileを作成したら、次のコマンドでイメージをビルドすることができます。
docker build -t my-python-app .
-t
オプションは、イメージにタグを付けるために使用されます。my-python-app
は、イメージの名前です。.
は、Dockerfileがあるディレクトリを指定します。
サンプルコード
以下は、Pythonで書かれた簡単なWebアプリケーションです。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, World!'
if __name__ == '__main__':
app.run()
以下は、Flaskを使ったWebアプリケーションをDockerコンテナで実行するためのDockerfileです。
FROM python:3.9-slim-buster
WORKDIR /app
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "app.py"]
以上のDockerfileを使って、以下のコマンドでイメージをビルドし、Dockerコンテナを実行することができます。
docker build -t my-flask-app .
docker run -p 5000:5000 my-flask-app
注意点
Dockerイメージを作成する際には、以下の点に注意する必要があります。
- Dockerfileに記述する手順は、ビルドの順序に従って記述する必要があります。
- イメージに含めるファイルやディレクトリを選択する必要があります。
- イメージに含めるアプリケーションの依存関係を正確にインストールする必要があります。
まとめ
Dockerイメージを作成することで、アプリケーションのデプロイが迅速かつ簡単になります。Dockerfileに手順を記述し、docker build
コマンドでイメージをビルドすることができます。Dockerを使ったアプリケーションの開発を始める際には、Dockerイメージの作成方法を学ぶことが重要です。
Docker 関連のまとめ
オンラインスクールを講師として活用する!