以下が導入されていることを確認してください。
- Docker
- Docker Compose(旧式またはプラグイン)
- mkcert
- Ansible
- GNU Make
Ubuntu での Ansible 導入:
sudo apt update && sudo apt install -y ansibleansible/vars/secrets.example.ymlをansible/vars/secrets.ymlにリネームし、プロジェクト設定を記述:
project_name: sample
user: user
proxy_template_name: default.conf.template
...- Make コマンドで開発環境を初期化:
make container-initこのコマンドにより以下が自動実行されます:
.envファイルの生成(テンプレートから)init.sqlの生成(テンプレートから)proxy/sslディレクトリの作成と pem ファイルの発行(mkcert)- Docker Compose によるビルド&起動
ansible/environment-setup.yml: 開発環境をセットアップするansible/docker-build-up.yml: コンテナビルド&起動ansible/docker-container-reset.yml: コンテナ停止&削除vars/secrets.yml: 環境変数の定義(project_name など)templates/env.j2: .envのテンプレート
- Python アプリ:
http://127.0.0.1:PROXY_PUBLIC_PORT/
make container-init # 初期セットアップ(環境 + ビルド&起動)
make docker-setup-env # 環境のみセットアップ(env, SQL, sslなど)
make container-build-up # コンテナビルド&起動
make container-remove # コンテナ停止&データ削除&初期化状態へ# コンテナ停止
cd docker && docker compose down
# ボリューム・イメージも含め削除
cd docker && docker compose down --rmi all --volumes --remove-orphans
# 未使用(dangling)イメージ削除
docker rmi $(docker images -f "dangling=true" -q)
# キャッシュ削除
docker builder prune