From fe18f8b54efab4cfa5fbef74027cd3880b8a8328 Mon Sep 17 00:00:00 2001 From: Dennis Postma Date: Sat, 8 Feb 2025 04:09:51 +0100 Subject: [PATCH] docker --- .env.example | 8 ++++---- docker-compose.yml | 38 +++++++++----------------------------- package.json | 2 +- 3 files changed, 14 insertions(+), 34 deletions(-) diff --git a/.env.example b/.env.example index 7b6b3ff..b71e628 100644 --- a/.env.example +++ b/.env.example @@ -6,10 +6,10 @@ JWT_SECRET="secret" CLIENT_URL="http://localhost:5173" # Database configuration -REDIS_URL="redis://@127.0.0.1:6379/4" -DB_HOST="localhost" -DB_USER="root" -DB_PASS="" +REDIS_URL="redis://@redis:6379/4" +DB_HOST="mariadb" +DB_USER="mariadb" +DB_PASS="mariadb" DB_PORT="3306" DB_NAME="game" diff --git a/docker-compose.yml b/docker-compose.yml index 2bee56f..251f0ef 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,5 +1,3 @@ -version: '3.8' - services: app: build: @@ -7,26 +5,8 @@ services: dockerfile: Dockerfile ports: - "${PORT}:${PORT}" - environment: - - ENV=${ENV} - - HOST=${HOST} - - PORT=${PORT} - - JWT_SECRET=${JWT_SECRET} - - CLIENT_URL=${CLIENT_URL} - - REDIS_URL=${REDIS_URL} - - DB_HOST=${DB_HOST} - - DB_USER=${DB_USER} - - DB_PASS=${DB_PASS} - - DB_PORT=${DB_PORT} - - DB_NAME=${DB_NAME} - - ALLOW_DIAGONAL_MOVEMENT=${ALLOW_DIAGONAL_MOVEMENT} - - DEFAULT_CHARACTER_ZONE=${DEFAULT_CHARACTER_ZONE} - - DEFAULT_CHARACTER_POS_X=${DEFAULT_CHARACTER_POS_X} - - DEFAULT_CHARACTER_POS_Y=${DEFAULT_CHARACTER_POS_Y} - - SMTP_HOST=${SMTP_HOST} - - SMTP_PORT=${SMTP_PORT} - - SMTP_USER=${SMTP_USER} - - SMTP_PASSWORD=${SMTP_PASSWORD} + env_file: + - .env volumes: - app-public:/user/src/app/public - app-logs:/user/src/app/logs @@ -38,12 +18,12 @@ services: - app-network mariadb: - image: mariadb:10.6 + image: mariadb:lts environment: - - MYSQL_ROOT_PASSWORD=${DB_PASS} - - MYSQL_DATABASE=${DB_NAME} - - MYSQL_USER=${DB_USER} - - MYSQL_PASSWORD=${DB_PASS} + - MARIADB_USER=${DB_USER} + - MARIADB_PASSWORD=${DB_PASS} + - MARIADB_DATABASE=${DB_NAME} + - MARIADB_RANDOM_ROOT_PASSWORD=yes volumes: - mariadb-data:/var/lib/mysql ports: @@ -51,10 +31,10 @@ services: restart: unless-stopped networks: - app-network - command: ['mysqld', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci'] + command: ['mariadbd', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci'] redis: - image: redis:7-alpine + image: redis:7.4.2-alpine command: redis-server --appendonly yes volumes: - redis-data:/data diff --git a/package.json b/package.json index 54a1f90..9d53c23 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "type": "module", "tsNode": true, "scripts": { - "start": "node --experimental-specifier-resolution=node --loader ts-node/esm src/server.ts", + "start": "node --import tsx/esm src/server.ts", "dev": "nodemon --exec tsx src/server.ts", "format": "prettier --write src/", "lint": "eslint .",