From d3954ec035ac0f18990acab6772479c54b537c0c Mon Sep 17 00:00:00 2001
From: Genvictus <johannstarkmk42@gmail.com>
Date: Mon, 13 Nov 2023 17:35:22 +0700
Subject: [PATCH] chore: config for docker-config

---
 .env.default              | 12 +++++-------
 docker-compose.yml        | 31 +++++++++++--------------------
 scripts/build-image.sh    |  2 +-
 src/app/config/config.php | 10 +++++-----
 4 files changed, 22 insertions(+), 33 deletions(-)

diff --git a/.env.default b/.env.default
index 0ad96d7..7ecaf64 100644
--- a/.env.default
+++ b/.env.default
@@ -1,11 +1,9 @@
 # Use this as template for creating .env environment file
 
-POSTGRES_USER=tubeswbd
-POSTGRES_PASSWORD=tubes1Password
-POSTGRES_DB=tubes-db
+MONOLITHIC_POSTGRES_USER="tubeswbd"
+MONOLITHIC_POSTGRES_PASSWORD="tubes1Password"
+MONOLITHIC_POSTGRES_DB="tubes-db"
 
-POSTGRES_HOST=pg_container
-POSTGRES_PORT=5432
+MONOLITHIC_POSTGRES_PORT="5432"
 
-PGADMIN_DEFAULT_EMAIL: "tubeswbd@tubes.com"
-PGADMIN_DEFAULT_PASSWORD: "tubes1Password"
\ No newline at end of file
+MONOLITHIC_POSTGRES_HOST="monolithic_postgres"
diff --git a/docker-compose.yml b/docker-compose.yml
index f9804fb..5b5ded3 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,39 +1,30 @@
 version: '3.3'
 services:
-  web:
-    image: tubes-1:latest
+  php-web:
+    image: php-app
     ports:
       - 8008:80
     depends_on:
-      - postgres
+      - php-postgres
     env_file:
       - .env
     volumes:
       - ./src:/var/www/html
   
   # Source: https://github.com/alexeagleson/docker-node-postgres-template/blob/master/docker-compose.yml
-  postgres:
-    container_name: ${POSTGRES_HOST}
+  php-postgres:
     image: postgres:16-alpine
+    container_name: ${MONOLITHIC_POSTGRES_HOST}
     restart: always
-    env_file:
-      - .env
+    environment:
+      POSTGRES_USER: ${MONOLITHIC_POSTGRES_USER}
+      POSTGRES_PASSWORD: ${MONOLITHIC_POSTGRES_PASSWORD}
+      POSTGRES_DB: ${MONOLITHIC_POSTGRES_DB}
     ports:
       # Standard port for PostgreSQL databases
-      - "5432:${POSTGRES_PORT}"
+      - "5432:${MONOLITHIC_POSTGRES_PORT}"
     volumes:
       # When the PostgresSQL container is started it will run any scripts
       # provided in the `docker-entrypoint-initdb.d` directory, this connects
       # our seed file to that directory so that it gets run
-      - ./migration/database-seed.sql:/docker-entrypoint-initdb.d/database-seed.sql
-
-  # PostgreSQL pgAdmin panel accessible at http://localhost:16543/
-  pgadmin-compose:
-    image: dpage/pgadmin4
-    restart: always
-    env_file:
-      - .env
-    ports:
-      - "16543:80"
-    depends_on:
-      - postgres
\ No newline at end of file
+      - ./migration/database-seed.sql:/docker-entrypoint-initdb.d/database-seed.sql
\ No newline at end of file
diff --git a/scripts/build-image.sh b/scripts/build-image.sh
index ce096ba..7b6da8a 100644
--- a/scripts/build-image.sh
+++ b/scripts/build-image.sh
@@ -1 +1 @@
-docker build -t tubes-1:latest .
\ No newline at end of file
+docker build -t php-app .
\ No newline at end of file
diff --git a/src/app/config/config.php b/src/app/config/config.php
index 0f93597..39df45a 100644
--- a/src/app/config/config.php
+++ b/src/app/config/config.php
@@ -6,11 +6,11 @@ define('SECONDS_MINUTE', 60);
 define('SECONDS_HOUR', 3600);
 
 /* -- Database Configuration -- */
-define('DBNAME', $_ENV['POSTGRES_DB']);
-define('DBUSER', $_ENV['POSTGRES_USER'] ?? 'postgres');
-define('DBPASSWORD', $_ENV['POSTGRES_PASSWORD']);
-define('DBHOST', $_ENV['POSTGRES_HOST']);
-define('DBPORT', $_ENV['POSTGRES_PORT']);
+define('DBNAME', $_ENV['MONOLITHIC_POSTGRES_DB']);
+define('DBUSER', $_ENV['MONOLITHIC_POSTGRES_USER'] ?? 'postgres');
+define('DBPASSWORD', $_ENV['MONOLITHIC_POSTGRES_PASSWORD']);
+define('DBHOST', $_ENV['MONOLITHIC_POSTGRES_HOST']);
+define('DBPORT', $_ENV['MONOLITHIC_POSTGRES_PORT']);
 
 define('CONNECT_RETRIES', 4);
 
-- 
GitLab