도커 - 이미지 만들고 배포하기

존스노우·2023년 10월 31일
0

docker

목록 보기
2/2

  • 이미지란 이런 것?
  • 3번줄 설명은 리눅스전체를 압축한 것 ? 예시

  • 베이스 이미지는 바꿀수 없음
  • mysql 이라하면 원본 데이터를 바꿀순 없지만
  • 새롭게 추가 수정 삭제를 함

  • 이런식으로
  • 깃이란게 포함된 새로운 이미지가추가됨
  • 그림만 보면 이해안가는데 도커 컴포즈 여러개를 합치는거 같은거?

  • 컨테이너 생성하고 bash로 접속함

  • docker 명령어를 이용해서 깃이라는 컨테이로 ubuntu:git 이라는데 커밋을 할거다
  • 이게뭔소리야!


  • 아까랑 차이점은 그냥 우분투는 깃이 없엇는대
  • 깃이 설처된 이미지를 가지고 있는 컨테이너는 깃이 포함되 있다


  • 이런식으로
  • 새로운 상태 이미지저장 (깃이 저장된 상태)



  • 여러가지 도커파일 명령어

  • 제외하고싶은 파일설정

  • build 방시긍로 해보자


docker build -t ubuntu:git-dockerfile

  • 우분투 라는 이름의 깃 도커파일 태그를생성함



  • git이 설치된 이미지!
  • 위에 명령어 하나씩 입력했을때 보다 자동으로 관리가 된다.

도커 이미지 만들기 - 웹 애플리케이션 (nodejs)

  • 설치를 하고

  • 코드를 넣어준다

  • brew install node 필수

  • 우분투 이미지를 쓰겠다
  • apt 업데이트하고 Node.js npm설치
  • 그리고 폴더에 복자하고
  • npm install
  • 이미지를 실행한다.

  • web 이미지를 만들고.

  • 실행시키기

리팩토링

  • 누군가 빈 리눅스에 노드js 설치한 node:16
  • 노드가 이미설치되있는 우분투 같다

  • 바로 설치

캐시 기능을 이용해 좀더 최적화

  • 캐시가 먹어서 빌드가 빠르다

  • 이렇게 바꾸면

  • 여기서 캐시가 깨짐

  • 이런식으로 최적화해주면
  • npm install까지 캐시가 되면서 속도가 더빠르게됨

복습

  • pc에 있던파일을 이미지로 복사해줌

  • 실제로 컨테이너로 접속해서 명령어를 실행시킬

  • 해당하는 디렉토리 이동에서 명령어를 하겠다

  • 어떤 포트를 사용할게

  • 컨테이너를 실행하면 실행할 명령어
profile
어제의 나보다 한걸음 더

0개의 댓글