DinD(docker in docker)와 DooD(docker out of docker)

2023. 4. 13. 00:10·Docker

DinD와 DooD

  • 둘다 컨테이너 안에서 도커 명령어를 사용하기 위한 방법

DinD

  • 도커 컨테이너 내에서 도커 데몬을 추가로 동작
  • 도커인 도커를 만들 때 --privileged 로 추가 권한 부여 → 호스트 장치에 권한을 부여해서 권장하지 않는 방식
docker run --privileged --name dind1 -d docker:20.10.5-dind

DooD

  • 기존 컨테이너를 추가로 생성
  • /var/run/docker.sock 파일을 외부(호스트 환경)과 공유함으로 도커 데몬 사용 가능
  • /var/run/docker.sock : 로컬 시스템에서 도커 데몬과 통신할 수 있는 소켓 파일
docker run -it -v /var/run/docker.sock:/var/run/docker.sock docker

DooD 설정 했는데 컨테이너 안에서 도커 명령어가 없다고 뜸

→ 도커 cli 는 다운 받아야 함

 

Jenkins를 docker 컨테이너로 구축하기(Docker in Docker)

0. 계기올해 초에 회사 jenkins 서버를 docker로 재구축한 적이 있었습니다. 그 때의 경험을 블로그에 반드시 남겨야겠다고 생각했었는데, 이제서야 글을 쓰게 되었네요. 일단 제가 겪은 상황은 다음

postlude.github.io

→ 도커 ce 다운 안 받아져서 아래 명령어 침

apt-get update

apt-get -y install apt-transport-https \\
     apt-utils \\
     ca-certificates \\
     curl \\
     gnupg2 \\
     zip \\
     unzip \\
     software-properties-common

curl -fsSL <https://download.docker.com/linux/$>(. /etc/os-release; echo "$ID")/gpg > /tmp/dkey; apt-key add /tmp/dkey

add-apt-repository \\
   "deb [arch=amd64] <https://download.docker.com/linux/$>(. /etc/os-release; echo "$ID") \\
   $(lsb_release -cs) \\
   stable" && \\

apt-get update

apt-get -y install docker-ce

참고

  • DinD(docker in docker)와 DooD(docker out of docker)
  • Jenkins를 docker 컨테이너로 구축하기(Docker in Docker)
  • DooD (docker-outside-of-docker) 를 통해 Jenkins 컨테이너에서 docker 사용하기

젠킨스에서 도커명령어를 사용해야하는 이유…?

  • jenkins에서 빌드한 spring 프로젝트의 이미지를 만들기 위해 docker build 를 써야해서
  • docker build 는 dockerfile을 기반으로 이미지 생성

'Docker' 카테고리의 다른 글

Docker 기본 개념  (0) 2023.04.13
'Docker' 카테고리의 다른 글
  • Docker 기본 개념
연잔
연잔
  • 연잔
    Bit by Bit
    연잔
  • 전체
    오늘
    어제
    • 분류 전체보기
      • TIL
      • 생각정리
      • JAVA
      • Spring
      • Database
      • 운영체제
      • 네트워크
      • WEB
      • Docker
      • Jenkins
      • DevOps
      • git
      • Etc
        • Error
      • html, css
      • 프로젝트
        • MoaaMoaa
        • TEDbear
        • ChePo
      • Book
        • 클린 코드
        • 클린아키텍처
        • 데이터 중심 애플리케이션 설계
        • IT 엔지니어를 위한 네트워크 입문
        • 주니어가 반드시 알아야할 실무지식
      • SSAFYcial
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Algolithm
    SSAFY
    싸피
    인터넷
    HTTP
    HTML
    algorithm
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
연잔
DinD(docker in docker)와 DooD(docker out of docker)
상단으로

티스토리툴바