研究室配属支援サービス
2018年度中のリリースを予定
タスクランナーとしてmakeを使用する.
予め
- pyenv
- pipenv
- yarn
を使用可能にしておくこと.
# .env.*をコピーして作成
$ make env
# .venvの作成,node_modulesの作成,イメージをPull
$ make deps
環境はdocker-composeで立ち上がる.3つの段階が存在する.
dev
- CalyxはDocker Imageを使用して起動.
- Petalsは内部で
yarn start
を使い,ローカルのソースファイルをマウントしているため,ホットリロードが有効になっている. - APIは
:8000
,フロントは:8080
でlistenする.
qa
- Calyx, Petals共にImageを使用して起動.
- Petalsは
yarn build
した結果をコンテナ内にマウントしており,nginxにより静的ファイルとして配信される. - APIは
:8000
,フロントは:8080
でlistenする.
prod
jwilder/docker-gen
とJrCs/docker-letsencrypt-nginx-proxy-companion
によるリバースプロキシ環境を要求.- httpsでサーブする
以降はdev
を前提とする.
dev環境では一度buildを実行する.
$ make build-dev
コンテナの起動や停止等は下記で実行する
# コンテナの起動
$ make start-dev
# コンテナの停止
$ make stop-dev
# コンテナの再起動
$ make restart-dev
# コンテナの削除
$ make clean-dev
Django管理コマンドの発行
# マイグレーションの実行
$ make migrate-dev
# manage.pyコマンドの実行
$ make manage-dev args="createsuperuser"
# ダミーデータを読み込む
# まず既存のデータを全削除
$ make manage-dev args="flush"
# 読み込む
$ make manage-dev args="loaddata dummy.json"
データは基本的にDocker Volumeで管理されている.削除したい場合はこのVolumeを削除する
$ docker volume rm saffron_saffron-db-dev
yarn build
の実行
$ make build
各イメージのビルド
$ make image
# Calyxのみ
$ make calyx-image
# Petalsのみ
$ make petals-image
不要なイメージの削除
$ make prune