38 lines
669 B
Docker
38 lines
669 B
Docker
FROM node:20-bookworm
|
|
|
|
# Create application directory
|
|
RUN mkdir -p /usr/src/app
|
|
|
|
# Set environment variables
|
|
ENV PORT 3000
|
|
ENV NEXT_TELEMETRY_DISABLED=1
|
|
ENV RUNTIME_ENVIRONMENT=development
|
|
ENV OAUTH_CLIENT_ID=client_id
|
|
ENV OAUTH_CLIENT_SECRET=client_secret
|
|
|
|
WORKDIR /usr/src/app
|
|
|
|
# Copy package.json and pnpm-lock.yaml
|
|
COPY package.json /usr/src/app
|
|
COPY pnpm-lock.yaml /usr/src/app
|
|
|
|
# Install pnpm
|
|
RUN corepack enable pnpm
|
|
|
|
# Install dependencies
|
|
RUN pnpm install
|
|
|
|
# Copy the rest of the application code
|
|
COPY . /usr/src/app
|
|
|
|
# Initialize Database
|
|
RUN pnpm run db
|
|
|
|
# Build the application
|
|
RUN pnpm run build
|
|
|
|
EXPOSE 3000
|
|
|
|
# Start the application
|
|
CMD ["pnpm", "start"]
|