Added Docker

This commit is contained in:
Tiemen van Olst
2025-09-09 08:52:28 +02:00
parent 7f1595dddd
commit 72d9f5e642
29 changed files with 10623 additions and 193 deletions

View File

@@ -1,28 +1,43 @@
version: '3.9'
services:
nuxt-app:
app:
container_name: node-nuxt-4
build: .
container_name: nuxt-app
restart: always
environment:
- NODE_ENV=production
- GIT_REPO_URL=${GIT_REPO_URL}
- GIT_BRANCH=${GIT_BRANCH}
ports:
- "1337:3000"
volumes:
- nuxt-app-data:/app
labels:
- "traefik.enable=true"
- "traefik.http.routers.nuxt-app.rule=Host(`app.tiemen.dev`)"
- "traefik.http.routers.nuxt-app.entrypoints=websecure"
- "traefik.http.routers.nuxt-app.tls.certresolver=myresolver"
- "traefik.http.services.nuxt-app.loadbalancer.server.port=3000"
- .:/app
- /app/node_modules
environment:
- NODE_ENV=${NODE_ENV}
- DB_HOST=mariadb
- DB_PORT=3306
- DB_NAME=${DB_NAME}
- DB_USERNAME=${DB_USERNAME}
- DB_PASSWORD=${DB_PASSWORD}
command: ["sh", "/app/entrypoint.sh"]
restart: unless-stopped
depends_on:
- mariadb
networks:
- web
- mariadb_network
mariadb:
image: mariadb:latest
container_name: mariadb-nuxt-4
environment:
MYSQL_ROOT_PASSWORD: ${DB_PASSWORD}
MYSQL_DATABASE: ${DB_NAME}
MYSQL_USER: ${DB_USERNAME}
MYSQL_PASSWORD: ${DB_PASSWORD}
volumes:
- mariadb-data:/var/lib/mysql
restart: unless-stopped
networks:
- mariadb_network
volumes:
nuxt-app-data:
mariadb-data:
networks:
web:
external: true
mariadb_network:
driver: bridge