도커 명령어

Web Development assistant·2024년 3월 14일
0

docker

목록 보기
1/5

폴더 생성
npm init -y
npm i express

index.js 생성

const express = require('express');

const app = express();

app.get('/', (req, res)=>{
  res.send('Dream Codking in Docker! 😎');
});

app.listen(8080, ()=> console.log('Server is running 🐲'));

test 해보자

node index.js (express 백엔드 실행 , http://localhost:8080 )

도커 파일생성

FROM node:20-alpine						//노드 버전, 

WORKDIR /app

COPY package.json package-lock.json ./

RUN npm ci								//npm ci로 해야 명시된 라이브러리 버전 유지함

COPY index.js .

ENTRYPOINT [ "node", "index.js" ]       //자주 사용되는건 제일 아래로

도커 명령어

//-f 파일명, -t 도커 이미지(리포지토리) 명  마지막 .도커파일 위치

docker build -f Dockerfile -t fun-docker .	//도커 이미지 생성

docker images								//이미지 확인 명령어

//-d detached 컨테이너를 백그라운드로 실행, 포트번호 = 호스트8080: 컨테이너 8080
docker run -d -p 8080:8080 fun-docker		//생성한 이미지로 컨테이너 실행

docker ps	//실행중인 컨테이너 확인 명령어
docker logs ${컨테이너아이디}  //로그 확인


----- 도커 리포지토리 생성하며 
생성한 도커 이미지명과 리포지토리 명을 일치 시킨다
docker tag fun-docker:latest jiseong0612/docker-example:latest	//From fun-docker(이미지명)  To docker-example(리포지토리명):버전

docker images //이름을 바꾸고 나면 2개의 태그가 생긴걸 확인할 수 있다.
docker login //로그인 진행
docker push push jiseong0612/docker-example:latest	//리포지토리 푸시

https://hub.docker.com/repository/docker/jiseong0612/docker-example/general

스프링 부트 .jar 로 말아서 도커에 실행해보기

FROM openjdk:11

WORKDIR /app

COPY ex01-0.0.1-SNAPSHOT.jar ./

CMD [ "java", "-jar", "ex01-0.0.1-SNAPSHOT.jar"]

------------------------------------------------------------------

docker build -f Dockerfile -t bootappt .		//빌드할때 이미지이름을 일부터 오타를 줘봄
docker images
docker run --rm -p 1233:8080 bootappt			//오타 확인되고 도커에서 정상 작동됨


0개의 댓글