Skip to content

Deploy FastAPI migrate database

Chris Sweet edited this page Mar 14, 2023 · 1 revision

Steps to deploy FastAPI

Docker

Install from this link https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository

Add user to docker group

sudo usermod -aG docker $USER

Run etc.

  1. sudo docker compose build
  2. sudo docker compose up -d
  3. docker ps
  4. docker compose logs -f

Config files, docker-compose.yaml, nginx.conf

Database

To access the MySQL database

  1. export DATABASE_URL="mysql+pymysql://paduser:password@127.0.0.1/pad"
  2. Remove old database tables, sudo mysql, use pad;, show tables;, for all tables DROP TABLE IF EXISTS `training_results`;
  3. Import database mysql -u paduser -p pad < ~/pad-13-3-23--11-41.sql
  4. Migrate .venv/bin/alembic check, .venv/bin/alembic upgrade head

Website files

From fresh GitHub checkout,

  1. sudo find . -name '*.html' | sudo cpio -updm /var/www/html/website-api/
  2. sudo find . -name '*.py' | sudo cpio -updm /var/www/html/website-api/

Clone this wiki locally