FROM node:18-alpine

# Set working directory
WORKDIR /app

# Copy package files
COPY package*.json ./

# Install dependencies
RUN npm install --production

# Copy application files
COPY public ./public
COPY server ./server

# Create directory for SQLite database
RUN mkdir -p /app/data

# Expose port
EXPOSE 3000

# Set environment variable for database location
ENV DATABASE_PATH=/app/data/tasks.db

# Start the application
CMD ["node", "server/server.js"]