diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..1c1b2e9 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,17 @@ +.git +.gitignore +node_modules +.next +.env +.env.local +.env.development.local +.env.test.local +.env.production.local +README.md +.vscode +.idea +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.DS_Store \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..38551ac --- /dev/null +++ b/Dockerfile @@ -0,0 +1,23 @@ +# Use Node.js LTS version +FROM node:20-alpine + +# Set working directory +WORKDIR /app + +# Copy package files +COPY package*.json ./ + +# Install dependencies +RUN npm ci + +# Copy the rest of the application +COPY . . + +# Build the application +RUN npm run build + +# Expose the port the app runs on +EXPOSE 3000 + +# Start the application in production mode by default +CMD ["npm", "start"] \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..11478fc --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,18 @@ +version: "3.8" + +services: + app: + build: + context: . + dockerfile: Dockerfile + container_name: stripstream-app + ports: + - "3000:3000" + volumes: + - .:/app + - /app/node_modules + - /app/.next + environment: + - NODE_ENV=development + - NEXT_PUBLIC_API_URL=https://mysite.com + command: npm run dev