This repository was archived by the owner on Dec 31, 2023. It is now read-only.
Tags: br3ndonland/full-stack-fastapi-postgresql
Tags
The upstream Cookiecutter at tiangolo/full-stack-fastapi-postgresql is a great resource. I'm thankful to @tiangolo and the other maintainers for the work they have done. This release will build on their work with some updates. In order to avoid conflicts with the versioning system used by tiangolo/full-stack-fastapi-postgresql, I have moved this fork to a calendar versioning system, with a format similar to the VSCode Python extension at https://github.com/microsoft/vscode-python. Features - Upgrade to Vue CLI 4 - 006d152 - Configure TSLint to work with Prettier - 16bd4d5 - Format web code with Prettier - 4d65e74 - b3f912b - 7e054b4 - 1e2b070 - db8cc82 - f13ecc9 - b520cf5 - 6f79bd0 - Make Python code Flake8-compliant - 505c8f9 - e7d78ab - 764ffd8 - 0e663cc - Add Git hooks with pre-commit - 4725527 - Improve documentation - (numerous commits) - Clarify and streamline README - Add wiki for more detailed information Fixes - Patch Axios vulnerability reported by npm - 63374ed - Fix Pydantic imports - 62eff90 - addresses fastapi#84 - addresses fastapi#85 - addresses fastapi#86 - Fix Pydantic models - efb0851 - addresses fastapi#43 - addresses fastapi#72 - Ignore secrets - 5a8deb8 - Create Docker network for production deployment with Docker Swarm - a0ee1a3 Builds - The Travis CI builds are currently passing. - https://travis-ci.com/br3ndonland/full-stack-fastapi-postgresql - The development environment builds on macOS and Ubuntu with `docker-compose up --build -d`. - The production Docker Stack builds successfully. Steps used so far for Docker Stack deployment on an Ubuntu server with Docker (environment variables below should be substituted for your setup): ```sh # Install dependencies (add Docker if not already installed) apt-get update apt-get install python-pip pip install docker-auto-labels # Pull and build TAG=prod FRONTEND_ENV=production bash ./scripts/build.sh # Initialize swarm mode docker swarm init --advertise-addr "$SERVER_IP" # Deploy DOMAIN=${DOMAIN} \ TRAEFIK_PUBLIC_NETWORK=${TRAEFIK_PUBLIC_NETWORK} \ TRAEFIK_TAG=${TRAEFIK_TAG} \ STACK_NAME=${STACK_NAME} \ TAG=prod \ bash ./scripts/deploy.sh # Inspect docker stack ps "$STACK_NAME" docker service logs -f "$STACK_NAME" # Shut down if no longer needed docker stack rm "$STACK_NAME" docker network rm "$TRAEFIK_PUBLIC_NETWORK" docker system prune -a ``` - I haven't yet been able to expose the production stack to the public internet. I need to do some more work on the Traefik configuration to properly handle HTTPS networking. v2019.12.09001