본문 바로가기

서버

ubuntu - nginx, next 도커 셋팅

728x90

기본셋팅

- 우분투 

- jdk, node, docker 설치 후 환경변수 셋팅 완료

 


 

1. 도커 네트워크 추가 

docker network create erp-net

 


2. nginx dockerfile, default.conf 생성

 

dockerfile

FROM nginx:alpine

COPY default.conf /etc/nginx/conf.d/default.conf

 

 

 

default.conf

server {
    listen 80;

    server_name localhost;

    location / {
        proxy_pass http://erp-next:3000;
        proxy_http_version 1.1;

        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        # Next.js websocket / HMR 대응
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
    
}

 


 

3. next dockerfile 생성

FROM node:22-alpine

WORKDIR /app

COPY package*.json ./
RUN npm install

COPY . .

RUN npm run build

EXPOSE 3000

CMD ["npm", "start"]

4. nginx 컨테이너 띄우기 

docker stop erp-nginx
docker rm erp-nginx
docker rmi erp-nginx-image

docker build -t erp-nginx-image .

docker run -d -p 80:80 --name erp-nginx --net erp-net erp-nginx-image

5. next 컨테이너 띄우기

docker stop erp-next
docker rm erp-next
docker rmi erp-next-image

docker build -t erp-next-image .
docker run -d -p 3000:3000 --name erp-next --net erp-net erp-next-image