mirror of
https://github.com/soconnor0919/hristudio.git
synced 2025-12-11 22:54:45 -05:00
dockerized build system
This commit is contained in:
21
Dockerfile
Normal file
21
Dockerfile
Normal file
@@ -0,0 +1,21 @@
|
||||
# Use the Node.js 18 Alpine Linux image as the base image
|
||||
FROM node:22-alpine
|
||||
|
||||
# Set the working directory inside the container to /app
|
||||
WORKDIR /app
|
||||
|
||||
# Copy package.json and package-lock.json files into the working directory
|
||||
COPY package*.json ./
|
||||
|
||||
# Install the dependencies specified in package.json
|
||||
RUN npm install -g pnpm
|
||||
RUN pnpm install
|
||||
|
||||
# Copy all the files from the local directory to the working directory in the container
|
||||
COPY . .
|
||||
|
||||
# Push database schema to database
|
||||
RUN pnpm drizzle-kit push
|
||||
|
||||
# Run the application in development mode
|
||||
CMD ["pnpm", "run", "dev"]
|
||||
38
docker-compose.yml
Normal file
38
docker-compose.yml
Normal file
@@ -0,0 +1,38 @@
|
||||
# Use Docker Compose file format version 3.9
|
||||
# version: '3.9'
|
||||
|
||||
services:
|
||||
app:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- '3000:3000' # Node.js
|
||||
- '4983:4983' # Drizzle Studio
|
||||
volumes:
|
||||
- .:/app
|
||||
- /app/node_modules
|
||||
environment:
|
||||
NODE_ENV: development
|
||||
command: ["pnpm", "run", "dev"]
|
||||
|
||||
db:
|
||||
image: postgres
|
||||
restart: always
|
||||
# ports:
|
||||
# - 5432:5432 # DEBUG
|
||||
volumes:
|
||||
- postgres:/var/lib/postgresql/data
|
||||
environment:
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
POSTGRES_DB: ${POSTGRES_DB}
|
||||
|
||||
adminer:
|
||||
image: adminer
|
||||
restart: always
|
||||
ports:
|
||||
- 8080:8080
|
||||
|
||||
volumes:
|
||||
postgres:
|
||||
Reference in New Issue
Block a user