Requirement: Docker & Docker-Compose
- Clone Repo, renamed directory to app
- Add app/.env file
.env:
# Flask
FLASK_APP=task.app
# MySQL
MYSQL_HOST=mysql
MYSQL_PORT=3306
MYSQL_DATABASE=DB_NAME_YOU_LIKE
MYSQL_USER=DB_USER_YOU_WANT
MYSQL_PASSWORD=USER_PASSWORD_YOU_DEFINE
MYSQL_ROOT_PASSWORD=ROOT_PASSWORD_YOU_MAKE
- cd app
- Run: docker-compose -f dev.yml up --build -d
- Stop: docker-compose -f dev.yml down
- Migrate: docker-compose -f dev.yml exec -T flask flask db migrate -m "COMMENT_MESSAGE"
- Same as Local step 1~2.
- Edit prod.yml, change nginx args
- CERTBOT_EMAIL=YOUR_EMAIL
- DOMAIN_LIST=YOUR_DOMAIN
- cd app
- Run: docker-compose -f prod.yml up --build -d
- Stop: docker-compose -f prod.yml down
- sudo gpasswd -a ${USER} docker
- sudo su
- su ubuntu