- Updated .env.example and .env files for backend and frontend with placeholder values. - Enhanced .gitignore to include additional files and directories. - Modified docker-compose.yml to change image names and improve service health checks. - Updated README.md and SETUP_THE_PROJECT.md for clearer setup instructions. - Added database initialization scripts and SQL files for structured database setup. - Updated frontend Dockerfile to use Node.js 22 and adjusted package.json scripts. - Improved error handling and logging in start scripts for better debugging. - Added reCAPTCHA support in the signup page with conditional loading based on environment variables.
26 lines
544 B
Docker
26 lines
544 B
Docker
# Use the official Node.js 20 image as a base
|
|
FROM node:20
|
|
|
|
# Create and set the working directory
|
|
WORKDIR /usr/src/app
|
|
|
|
# Install global dependencies
|
|
RUN npm install -g ts-node typescript grunt grunt-cli
|
|
|
|
# Copy package.json and package-lock.json (if available)
|
|
COPY package*.json ./
|
|
|
|
# Install app dependencies
|
|
RUN npm ci
|
|
|
|
# Copy the rest of the application code
|
|
COPY . .
|
|
|
|
# Run the build script to compile TypeScript to JavaScript
|
|
RUN npm run build
|
|
|
|
# Expose the port the app runs on
|
|
EXPOSE 3000
|
|
|
|
# Start the application
|
|
CMD ["npm", "start"] |