회사 내 Docker 지식 공유

최준호·2022년 1월 11일
0

업무

목록 보기
7/31
post-thumbnail

👉 Docker를 시작하기 전에

docker의 image와 container의 개념을 확인

👉 Docker 이미지로 container 실행

pull한 node 이미지로 container를 실행시켜보고 exec 명령어로 파일을 실행시키는 것을 해보기

docker run -dit --name node node

백그라운드로 실행시키면서 컨테이너 죽지 않도록 실행

docker exec -it node /bin/bash

docker로 붙고 싶다면

docker exec node mkdir /project

exec 명령어 확인

👉 Dockerfile 작성

test 폴더를 생성하는 Dockerfile을 작성하여 테스트

docker 이미지를 만들어보자

Dockerfile 작성 참고글

#베이스 이미지
FROM node

# 개발자 정보
MAINTAINER "ililil9482@naver.com"

# 컨테이너 실행시 실행할 멸령어
RUN mkdir /test
# 작업 데렉터리 변경
WORKDIR /test

Dockerfile 작성

docker build -t ililil9482/test ./

Dockerfile build

docker images

이미지 생성된 것 확인

docker stop node
docker rm node
docker run -dit --name node2 ililil9482/test

그 이후로 node container 지우고 Dockerfile로 작성된 컨테이너 실행

👉 Docker compose 작성

Docker compose는 Docker 이미지를 한번에 묶어서 관리할 수 있는 것을 편하게 하기 위해 사용하는 편

version: '3.7'
  
services:
    node1:
        container_name: node1
        image: "node"
        command: tail -f /dev/null
        ports:
            - 3000:3000
    node2:
        image: "node"
        container_name: node2
        command: tail -f /dev/null

👉 컨테이너 내부에 express 설치하여 웹 실행시켜보기

npm install express -g
npm install express-generator -g
express --ejs test

cd test
npm install
npm start

👍 Docker 지식 공유하며 느낀점

회사에서 Docker와 Dockerfile, docker-compose에 대해 궁금해 하시고 배우고 싶어하시는 분들이 계셔서 갑작스럽게 지식 공유를 하게되었다. 개발자는 항상 지식 공유를 해야한다고 들었는데. 자신이 아닌 다른 사람을 이해시켜준다는건 어려운 일인거 같다. 그래도 회사 분들께서 곧잘 따라하셔서 다행이였다 ㅎㅎ 갑작스럽게 진행해서 정말 기본적인 내용과 제대로된 실습은 아니였지만 그래도 이 내용을 토대로 다들 docker를 사용하시는 것에 대해 더 편하게 접근하실 수 있게되었으면 좋겠다.

profile
코딩을 깔끔하게 하고 싶어하는 초보 개발자 (편하게 글을 쓰기위해 반말체를 사용하고 있습니다! 양해 부탁드려요!) 현재 KakaoVX 근무중입니다!

0개의 댓글