Skip to content
This repository was archived by the owner on Dec 31, 2023. It is now read-only.

Tags: br3ndonland/pythonvue

Tags

v2019.12.09001

Toggle v2019.12.09001's commit message

Verified

This tag was signed with the committer’s verified signature.
br3ndonland Brendon Smith
Matches br3ndonland/full-stack-fastapi-postgresql v2019.12.09001

Features

- Upgrade to Vue CLI 4
- Configure TSLint to work with Prettier
- Format web code with Prettier
- Make Python code Flake8-compliant
- Add Git hooks with pre-commit
- Improve documentation

Fixes

- Patch Axios vulnerability reported by npm
- Fix Pydantic imports
- Fix Pydantic models
- Ignore secrets
- Create Docker network for production deployment with Docker Swarm

Builds

- 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