Prepare production

This commit is contained in:
Lucas
2024-05-12 14:58:27 +02:00
parent 950482dbaf
commit e06995c91b
13 changed files with 545 additions and 108 deletions

6
production/Dockerfile Normal file
View File

@@ -0,0 +1,6 @@
FROM python:3.11.8-alpine
# Prod depedencies
RUN pip install flask psycopg2-binary sqlalchemy waitress
WORKDIR /app

View File

@@ -0,0 +1,3 @@
POSTGRES_USER=avsa_form
POSTGRES_PASSWORD=
POSTGRES_DB=avsa_form_db

View File

@@ -0,0 +1,10 @@
CREATE TABLE accounts (
user_id SERIAL PRIMARY KEY,
first_name VARCHAR (50) NOT NULL,
last_name VARCHAR (50) NOT NULL,
phone_number VARCHAR (30) NOT NULL,
request_at TIMESTAMP NOT NULL,
start_availability TIMESTAMP NOT NULL,
end_availability TIMESTAMP NOT NULL,
user_type VARCHAR (10) NOT NULL
);

3
production/db-public.env Normal file
View File

@@ -0,0 +1,3 @@
POSTGRES_USER=avsa_form
POSTGRES_PASSWORD=
POSTGRES_DB=avsa_form_db

View File

@@ -0,0 +1,36 @@
services:
app:
context: .
dockerfile: Dockerfile
container_name: avsa_form_app
restart: always
volumes:
- ../app:/app
command: waitress-serve --call 'hello:create_app'
env_file:
- app.env
- db.env
networks:
- reverse-proxy
- avsa_form
db:
image: postgres:13.1
container_name: avsa_form_db
restart: always
volumes:
- ./postgresql:/var/lib/postgresql/data
env_file:
- db.env
networks:
- avsa_form
networks:
avsa_form:
reverse-proxy:
external: true