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