diff --git a/.dockerignore b/docker/.dockerignore similarity index 100% rename from .dockerignore rename to docker/.dockerignore diff --git a/Dockerfile.dev b/docker/Dockerfile similarity index 100% rename from Dockerfile.dev rename to docker/Dockerfile diff --git a/Dockerfile b/docker/Dockerfile.prod similarity index 100% rename from Dockerfile rename to docker/Dockerfile.prod diff --git a/docker/docker-compose.prod.yml b/docker/docker-compose.prod.yml new file mode 100644 index 0000000..fbe2179 --- /dev/null +++ b/docker/docker-compose.prod.yml @@ -0,0 +1,45 @@ +services: + mysql: + image: mysql:8.0 + container_name: cinek-mysql + restart: unless-stopped + environment: + MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-rootpassword} + MYSQL_DATABASE: ${MYSQL_DATABASE:-cinek} + MYSQL_USER: ${MYSQL_USER:-cinek} + MYSQL_PASSWORD: ${MYSQL_PASSWORD:-cinekpassword} + ports: + - "3306:3306" + volumes: + - mysql_data:/var/lib/mysql + + redis: + image: redis:7-alpine + container_name: cinek-redis + restart: unless-stopped + ports: + - "6379:6379" + volumes: + - redis_data:/data + + cinek: + build: + context: .. + dockerfile: docker/Dockerfile.prod + container_name: cinek + restart: unless-stopped + environment: + NODE_ENV: production + HOST: 0.0.0.0 + PORT: 3002 + DATABASE_URL: ${DATABASE_URL} + REDIS_URL: ${REDIS_URL} + ports: + - "3002:3002" + depends_on: + - mysql + - redis + +volumes: + mysql_data: + redis_data: diff --git a/docker-compose.yml b/docker/docker-compose.yml similarity index 92% rename from docker-compose.yml rename to docker/docker-compose.yml index a2c48f4..a971faa 100644 --- a/docker-compose.yml +++ b/docker/docker-compose.yml @@ -24,8 +24,8 @@ services: cinek: build: - context: . - dockerfile: Dockerfile + context: .. + dockerfile: docker/Dockerfile container_name: cinek restart: unless-stopped environment: @@ -36,7 +36,7 @@ services: ports: - "3002:3002" volumes: - - .:/app + - ../:/app - /app/node_modules depends_on: - mysql