From 3ea123be89f95f11afb00dc374ea4203b6288cf3 Mon Sep 17 00:00:00 2001 From: Heidi Popovic Date: Sat, 16 Nov 2024 09:56:13 +0000 Subject: [PATCH] Code commit after successful local build --- Dockerfile | 14 +++++++++ analytics/requirements.txt | 2 +- deployment-local/postgresql-deployment.yaml | 32 +++++++++++++++++++++ deployment-local/postgresql-service.yaml | 10 +++++++ deployment-local/pv.yaml | 13 +++++++++ deployment-local/pvc.yaml | 11 +++++++ 6 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 Dockerfile create mode 100644 deployment-local/postgresql-deployment.yaml create mode 100644 deployment-local/postgresql-service.yaml create mode 100644 deployment-local/pv.yaml create mode 100644 deployment-local/pvc.yaml diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..064f4d26 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM public.ecr.aws/docker/library/python:3.8-slim + +WORKDIR /src + +COPY ./analytics/requirements.txt requirements.txt + +RUN apt update -y +RUN apt install build-essential libpq-dev -y +RUN pip install --upgrade pip setuptools wheel +RUN pip install -r requirements.txt + +COPY ./analytics . + +CMD python app.py \ No newline at end of file diff --git a/analytics/requirements.txt b/analytics/requirements.txt index 4653558e..e583d135 100644 --- a/analytics/requirements.txt +++ b/analytics/requirements.txt @@ -2,4 +2,4 @@ APScheduler==3.10.4 Flask==3.0.2 flask_sqlalchemy==3.1.1 SQLAlchemy==2.0.27 -psycopg2-binary==2.9.9 +psycopg2-binary==2.9.9 \ No newline at end of file diff --git a/deployment-local/postgresql-deployment.yaml b/deployment-local/postgresql-deployment.yaml new file mode 100644 index 00000000..ca9b7df2 --- /dev/null +++ b/deployment-local/postgresql-deployment.yaml @@ -0,0 +1,32 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: postgresql +spec: + selector: + matchLabels: + app: postgresql + template: + metadata: + labels: + app: postgresql + spec: + containers: + - name: postgresql + image: postgres:latest + env: + - name: POSTGRES_DB + value: mydatabase + - name: POSTGRES_USER + value: myuser + - name: POSTGRES_PASSWORD + value: mypassword + ports: + - containerPort: 5432 + volumeMounts: + - mountPath: /var/lib/postgresql/data + name: postgresql-storage + volumes: + - name: postgresql-storage + persistentVolumeClaim: + claimName: postgresql-pvc \ No newline at end of file diff --git a/deployment-local/postgresql-service.yaml b/deployment-local/postgresql-service.yaml new file mode 100644 index 00000000..733e368f --- /dev/null +++ b/deployment-local/postgresql-service.yaml @@ -0,0 +1,10 @@ +apiVersion: v1 +kind: Service +metadata: + name: postgresql-service +spec: + ports: + - port: 5432 + targetPort: 5432 + selector: + app: postgresql \ No newline at end of file diff --git a/deployment-local/pv.yaml b/deployment-local/pv.yaml new file mode 100644 index 00000000..31facea9 --- /dev/null +++ b/deployment-local/pv.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: my-manual-pv +spec: + capacity: + storage: 1Gi + accessModes: + - ReadWriteOnce + persistentVolumeReclaimPolicy: Retain + storageClassName: gp2 + hostPath: + path: "/mnt/data" \ No newline at end of file diff --git a/deployment-local/pvc.yaml b/deployment-local/pvc.yaml new file mode 100644 index 00000000..dfab0a71 --- /dev/null +++ b/deployment-local/pvc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: postgresql-pvc +spec: + storageClassName: gp2 + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 1Gi \ No newline at end of file