0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Dockerfileについて

Posted at

Dockerfile の基本から、Fargateで動かすための実用的な例

🧱 Dockerfileとは?

Dockerfile は、Dockerイメージを作るための設計図
中に「どんな環境で」「何を実行するか」を記述します。


✅ 最小構成の例(Pythonアプリ)

例えば、Pythonアプリケーションを動かしたい場合の Dockerfile はこんな感じです:

# ベースイメージを指定(公式Pythonの軽量バージョン)
FROM python:3.11-slim

# 作業ディレクトリを設定
WORKDIR /app

# 依存ファイルをコピー&インストール
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# アプリのソースコードをコピー
COPY . .

# コンテナ起動時に実行するコマンド
CMD ["python", "app.py"]

🧪 例: Flaskアプリ(Web API)

FROM python:3.11-slim

WORKDIR /app

COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY . .

ENV FLASK_APP=app.py
ENV FLASK_RUN_HOST=0.0.0.0

CMD ["flask", "run"]

requirements.txt(例)

flask

🚀 ビルドとテスト

EC2 またはローカルで以下のコマンドを実行:

# Dockerイメージをビルド
docker build -t myapp .

# 動作確認(ポート指定が必要な場合)
docker run -p 5000:5000 myapp

☁️ Fargate用に注意する点

  1. ポート番号はタスク定義と一致させる(例: 80や5000)
  2. 環境変数などがあればCMDやENTRYPOINT、またはECS側で設定
  3. ECRにpushしてECSで指定するだけでOK(EC2など不要)
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?