tech_memo / Docker / docker-compose


tech_memo/Docker

インストール

AWS

サンプル

  • Django環境サンプル
    • docker-compose.yml
      version: '3'
      services:
          db:
              image: postgres
          web:
              build: .
              command: python3 manage.py runserver 0.0.0.0:8000
              volumes:
                  - .:/code
              ports:
                  - "80:8000"
              depends_on:
                  - db
  • Dockerfile
    FROM python:3
    ENV PYTHONUNBEFFERED 1
    RUN mkdir /code
    WORKDIR /code
    COPY requirements.txt /code/
    RUN pip install -r requirements.txt
    COPY . /code/
  • requirements.txt
    Django==2.0
    psycopg2
  • exapmlepjという名前でカレントディレクトリにDjangoプロジェクトを作成
    docker-compose run web django-admin.py startproject exapmlepj .
  • DB設定変更
    sudo vim exapmlepj/settings.py
    
    ALLOWED_HOSTS = ['13.112.196.157']
    
    DATABASES = {
       'default': {
           'ENGINE': 'django.db.backends.postgresql',
           'NAME': 'postgres',
           'USER': 'postgres',
           'HOST': 'db',
           'PORT': 5432,
       }
    }
  • Webサービス起動
    docker-compose up -d