File tree Expand file tree Collapse file tree 4 files changed +69
-0
lines changed
Expand file tree Collapse file tree 4 files changed +69
-0
lines changed Original file line number Diff line number Diff line change 1+ node_modules
2+ .git
3+ .DS_Store
4+ build
Original file line number Diff line number Diff line change 1+ FROM node:18-alpine AS builder
2+
3+ # Set working directory inside the container
4+ WORKDIR /app
5+
6+ COPY package*.json ./
7+
8+ # Install dependencies with legacy peer deps fix
9+ RUN npm install --legacy-peer-deps
10+
11+ COPY . .
12+ RUN npm run build
13+
14+ # Production Image
15+ FROM node:18-alpine
16+ WORKDIR /app
17+ COPY --from=builder /app /app
18+ EXPOSE 3000
19+
20+ CMD ["npm" , "run" ,"serve" ]
Original file line number Diff line number Diff line change 1+ version : " 3.9"
2+
3+ services :
4+ recodehive :
5+ build :
6+ context : .
7+ ports :
8+ - " 3000:3000"
9+ volumes :
10+ - .:/app
11+ - /app/node_modules
12+ working_dir : /app
13+ command : npm run start
14+ environment :
15+ - NODE_ENV=development
Original file line number Diff line number Diff line change 1+ # Docker Container Setup - Documentation
2+
3+ This is the documentation on how to containerize and run the Recodehive website while using Docker.
4+
5+ ## Prerequesites
6+ - [ Docker] ( https://docs.docker.com/engine/install/ ) installed
7+ - Docker compose installed (Optional)
8+
9+ ## Steps
10+ ### 1. Create a ` Dockerfile ` in the root directory
11+ This is a text document that contains all the commands needs to build a Docker image. Basically a blue print of a docker image.
12+
13+ Key instructions include <br >
14+ - ` FROM <base_image>:<tag> ` : The first instruction and specifies the base image to build upon.
15+ - ` WORKDIR <path> ` : Sets the working directory inside the container for subsequent instructions.
16+ - ` COPY <source> <destination> ` : This instruction copies files or directories from your local machine (the build context) into the Docker image.
17+ - ` RUN <command> ` : Executes commands during the image build process. This is used for installing dependencies, updating packages etc.
18+ - ` EXPOSE <port> ` : Informs docker that the container listens on the specified ports at runtime.
19+
20+ ### 2. Build the Docker Image
21+ ``` bash
22+ docker build -t recodehive-app .
23+ ```
24+ This command builds the Docker image using the instructions in the Dockerfile and tags it as recodehive-app.
25+ ### 3. Run the Container
26+ ``` bash
27+ docker run -p 3000:3000 recodehive-app
28+ ```
29+ This runs the container and maps port 3000 from the container to your local machine. <br >
30+ Now Visit http://localhost:3000 to view the site.
You can’t perform that action at this time.
0 commit comments