😎

arm64 ubuntu上でDjango を docker-compose で動かす

2024/11/08に公開

概要

単純にdockerhubのDockerfileを使うだけだとうまくいかなかったのでメモ

Install(うまくいった!)

とりあえず結果だけ

  • requirements.txt を作成
    Django==5.1
    
  • Dockerfile を作成
    FROM python:3.13.0-bookworm
    
    RUN apt-get update \
        && apt-get install -y --no-install-recommends \
            postgresql-client \
        && rm -rf /var/lib/apt/lists/*
    
    RUN mkdir -p /usr/src/app
    WORKDIR /usr/src/app
    COPY requirements.txt ./
    RUN pip install --upgrade pip && pip install -r requirements.txt
    COPY . /usr/src/app
    
    EXPOSE 8000
    CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
    
  • docker-compose.ymlを作成
    version: '3.7'
    
    services:
      web:
        build: .
        ports:
          - "8080:8000"
        volumes:
          - .:/usr/src/app
        depends_on:
          - db
      db:
        image: postgres:15-alpine
        environment:
          POSTGRES_PASSWORD: postgres
          POSTGRES_DB: postgres
    
  • django install
    docker-compose run web django-admin startproject djangopj .
    
  • 起動
    docker-compose up
    

Install(うまくいかなかった)

https://docs.docker.jp/compose/django.html を参考に以下を追加

Discussion