반응형
1. Doker 란?
- 어플리케이션을 패키징할 수 있는 tool입니다. Container에 version, system tool과 dependencies을 저장해놓고 어느 컴퓨터 어느 운영체계에서도 나의 프로젝트를 운영할 수 있게 해주는 tool이라고 생각합니다.
- container을 만들때 필요한 3가지
- Dockerfile
- Image
- Container
2. Doker 다운로드.
- 도커 홈페이지에 접속해서 docker를 다운받아주시면 됩니다. 컴퓨터 운영체계에 맞는 docker를 다운받아 주시면 됩니다.
3. Dockerfile
- dockerfile를 생성하기전에 전에 만들어 놓은 express 프로젝트를 활용해서 dockerfile를 생성해보겠습니다. express를 사용해 보지 않은분들은 docker를 시작하기전에 한번 확인해 보시면 좋을거 같아요.
- Visual studio에서 extension에서 docker를 install 해주기.
3. 프로젝트 상단에 Dodcker 파일을 생성해줍니다.
- Dockerfile 작성하기.
- "FROM" 설정하기
- 처음에는 FROM을 사용해서 baseImage를 베이스로 사용합니다. 하지만 노드에서는 따로 제공(node:16-alpine)해주기때문에 쉽게 사용할 수 있습니다.(node.js version 링크)
- "WORKDIR"
- WOKRDIR을 사용해서 이 프로젝트를 어디서 실행할지 명시해줄 수 있습니다.
- "COPY"
- COPY는 우리 프로젝트를 복사해 오는 명령어 입니다.
- "RUN"
- RUN을 이용해서 package json을 install 해줄 수 있습니다.
- "ENTRYPOINT"
- 마지막으로 ENTRYPOINT를 이용해서 프로젝트를 실행해 줍니다.
- node.module은 용량이 커서 build하기전에 미리 삭제해주는것이 좋습니다.
6. build & push
Build 하기
- Docker hub 회원가입 and login하기
- Docker hub에 가입을 해줍니다.
- terminal에서 login하기
$ docker build -f Dockerfile -t 프로젝트명:version . <- .은 여기 위치라는 뜻
$ docker build -f Dockerfile -t test-example:1.0.0 .
-
- Docker hub에서 create repository
내 컴퓨터에 있는 프로젝트를 dockerhub에 연동 시키기
-
// docker 프로젝트 확인 $ docker images $ docker tag (Local에서 만든 프로젝트 명) (docker repo) $ docker tag test-example:1.0.0 kkaa81/test:1.0.0
Docker hub에 올리기
$ docker push (docker repo)
$ docker push kkaa81/test:1.0.0
Docker pull
내 repository에 있는 프로젝트를 가져올때 pull을 사용해줍니다.
$ docker pull username/프로젝트명:version
$ docker pull kkaa81/test:1.0.0
Docker Run
docker 이미지를 컨테이너로 돌리게 되면 docker 컨테이너프로그램이랑 도커를 host machine port를 맞춰 바인딩 해주셔야합니다.
$ docker run -d -p 외부포트:내부포트 프로젝트명
$ docker run -d -p 8888:8888 test:1.0.0
-d : 내가 멈추라고 할때까지 영구적으로 프로젝트를 실행 해줘 명령어
-p : 바인딩 해줄 명령어
이번에는 간단한 express프로젝트를 dockerfile를 만들어서 Image로 빌드하고 container에 올리는 연습까지 해보았습니다!
감사합니다.
반응형
'coding > Docker' 카테고리의 다른 글
[Docker]맥북 M1 빌드 오류(linux/arm64, linux/amd64) (0) | 2022.03.13 |
---|
댓글