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?

【自分用備忘】Docker-composeにてDjango環境ミニマムに作成

Last updated at Posted at 2023-07-07
# Pythonの公式イメージをベースに使用 3.8を指定
FROM python:3.8

# 環境変数を設定 この場合、Pythonが標準出力と標準エラーにすぐに書き込む
ENV PYTHONUNBUFFERED=1

# Docker内の作業ディレクトリを設定
WORKDIR /code

# ホストのrequirements.txtをDockerイメージの/codeにコピー
COPY requirements.txt /code/

# pipを使ってrequirements.txtに記載されているパッケージをインストール
RUN pip install -r requirements.txt

# ホストの存在しているすべてのファイルをDockerイメージの/codeにコピー
COPY . /code/
docker-compose.yml
# Docker Composeのファイルフォーマットバージョンを指定し
version: "3.9"

# このdocker-composeで定義するサービスをリスト
services:
  # "web"はサービス名で、任意の名前を付ける
  web:
    # Dockerfileを使ってDockerイメージをビルド
    build: .
    # Dockerコンテナ起動後に実行されるコマンドを指定します。ここではDjangoの開発サーバを起動
    command: python manage.py runserver 0.0.0.0:8000
    # ホストとDockerコンテナ間でファイルを共有する設定をします。左側がホストのパス、右側がDocker内のパス
    volumes:
      - .:/code
    # ホストとDockerコンテナ間でポートをフォワードします。左側がホストのポート、右側がDocker内のポート
    ports:
      - 8000:8000
requirements.txt
# Djangoと、必要な場合はその他のPythonパッケージをインストール
# バージョンは3.2.6を指定
Django==3.2.6
docker-compose run web django-admin startproject myproject .
sudo chown -R $USER:$USER .
docker-compose up
http://localhost:8000/

React

FROM node:lts
WORKDIR /usr/src/app
docker-compose.yml
version: '3.9'
services:
  app:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - ./app:/usr/src/app # ローカルをコンテナ内にマウント
    working_dir: /usr/src/app
    command: sh -c "cd react-app && yarn start"
    ports:
      - "3000:3000"
    stdin_open: true 
docker-compose run --rm app sh -c 'npx create-react-app react-app --template typescript'
sudo chown -R $USER:$USER .
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?