-
-
Save piyushgarg-dev/ea8c5aa52de0496753b88cd938abd728 to your computer and use it in GitHub Desktop.
version: "3.8" | |
services: | |
postgres: | |
image: postgres # hub.docker.com | |
ports: | |
- "5432:5432" | |
environment: | |
POSTGRES_USER: postgres | |
POSTGRES_DB: review | |
POSTGRES_PASSWORD: password | |
redis: | |
image: redis | |
ports: | |
- "6379:6379" |
FROM ubuntu | |
RUN apt-get update | |
RUN apt-get install -y curl | |
RUN curl -sL https://deb.nodesource.com/setup_18.x | bash - | |
RUN apt-get upgrade -y | |
RUN apt-get install -y nodejs | |
COPY package.json package.json | |
COPY package-lock.json package-lock.json | |
COPY main.js main.js | |
RUN npm install | |
ENTRYPOINT [ "node", "main.js" ] |
Doing this also works fine, just perform the upgrade before install, and install the nodejs image:
`FROM ubuntu
RUN apt-get update
RUN apt-get install -y curl
RUN apt-get upgrade -y
RUN curl -sL https://deb.nodesource.com/setup_18.x | bash -
RUN apt-get install -y nodejs
COPY package.json package.json
COPY package-lock.json package-lock.json
COPY index.js index.js
RUN npm install
ENTRYPOINT [ "node","index.js" ]`
while running above code in root directory, npm install will throw an error.
To solve this we can change the work directory: e.g WORKDIR /usr/app
we can put this command before COPY commands and it works fine @piyushgarg-dev
Make sure you have added these commands:
RUN curl -sL https://deb.nodesource.com/setup_18.x | bash -
RUN apt-get install -y nodejs
Use this one for maximum efficient output with no error:
FROM ubuntu
Install dependencies
RUN apt-get update &&
apt-get install -y curl &&
curl -sL https://deb.nodesource.com/setup_18.x | bash - &&
apt-get install -y nodejs &&
apt-get upgrade -y &&
apt-get clean &&
rm -rf /var/lib/apt/lists/*
Set working directory
WORKDIR /app
Copy application files
COPY . .
Install node dependencies
RUN npm install
Set the default command
ENTRYPOINT ["node", "app.js"]
Use this one for maximum efficient output with no error:
1-----------------------------------------------------------------------------
FROM ubuntu
RUN apt-get update
RUN apt-get install -y curl
RUN apt-get upgrade -y
RUN curl -sL https://deb.nodesource.com/setup_18.x | bash -
RUN apt-get install -y nodejs
COPY package.json package.json
COPY package-lock.json package-lock.json
COPY index.js index.js
RUN npm install
ENTRYPOINT [ "node","index.js" ]
OR
2--------------------------------------------------
FROM node
COPY package.json package.json
COPY package-lock.json package-lock.json
COPY index.js index.js
RUN npm install
ENTRYPOINT [ "node","index.js" ]
This worked for me:
FROM ubuntu:latest
RUN apt-get update && apt-get install -y curl
RUN curl -sL https://deb.nodesource.com/setup_18.x | bash -
RUN apt-get install -y nodejs
RUN node -v
RUN npm -v
COPY package.json package-lock.json ./
RUN npm install
COPY index.js .
EXPOSE 3000
CMD ["node", "index.js"]
while running above code in root directory, npm install will throw an error.
To solve this we can change the work directory:
e.g WORKDIR /usr/app
we can put this command before COPY commands
and it works fine
@piyushgarg-dev