公式サイトを参照

Dockerのない状態に戻す

 sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

Dockerのインストール

sudo apt-get update
sudo apt-get install ca-certificates curl

APTのリポジトリキーを保存するためのディレクトリを作成

sudo install -m 0755 -d /etc/apt/keyrings

リポジトリキーをダウンロードする

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

インストールができたか確認

 sudo docker run hello-world

その後、便利にする設定(optional)

Docker+Django

ドキュメントを参照。だがそのままやるとバグるので一部変更した。

Dockerfileを作成し、以下の内容を書き込む

FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code/

プロジェクトディレクトリでrequirements.txtを作成し、以下の内容を記述

Django
psycopg2

docker-compose.ymlを作成し、以下の内容を記述

version: '3'

services:
  db:
    image: postgres
  web:
    build: .
    command: python3 manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/code
    ports:
      - "8000:8000"
    depends_on:
      - db

Docker imageを構成する

docker compose build

djangoプロジェクトを作る

docker compose run web django-admin startproject composeexample .

権限はこれで追加しておく

sudo chown -R $USER:$USER .

dbイメージを構成するときのエラーはこれで解決

composeexample/setting.pyALLOWED_HOST['*']にしておく。

以降は公式のチュートリアルを見る


Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です