본문 바로가기

{시리즈}/Docker6

5. Dockerfile를 사용하여 이미지 생성 1. Dockerfile 이란? 공식문서의 정의(Dockerfile reference) Docker can build images automatically by reading the instructions from a Dockerfile. A Dockerfile is a text document that contains all the commands a user could call on the command line to assemble an image. This page describes the commands you can use in a Dockerfile. 쉽게 말하면 Dockerfile은 도커 이미지를 생성하기 위한 명령어 모음이다. Dockerfile은 자체적인 명령어를 사용하여 정의한다. 명.. 2023. 12. 11.
4. 실습 - Docker Hub에서 node 특정 버전을 찾아서 내려 받기 실행하기 실습의 목적 Docker 연습을 위한 실습에는 아무 이미지나 테스트해도 상관없다. 하지만 프로젝트 환경이나 운영환경에서는 목적에 맞는 '이미지'를 찾는게 중요하다. '이미지'마다 정의되어 있는 환경은 다르며, 모든 이미지에 대해 설명할 수 없다. 그래서 실습을 통해 이미지를 찾는 과정에 대해 설명하려 한다. 실습 환경 공식 레지스트리: Docker Hub 공식 실습 환경: Docker에서 제공하는 playground 1. 이미지 검색 1.1. docker search node 명령 이미지를 검색 docker search node 명령으로도 이미지를 검색은 가능하지만 깊이 있는 검색은 지원하지 않는다. 어떤 이미지가 공식인지 스타를 많이 받았는지 등의 정보만 제공된다. 1.2. Docker Hub에서 no.. 2023. 12. 4.
4. Docker 명령어 알아보기 1. 도커 명령어 참고: Docker docs | commandline 처음 공식 사이트의 Docker CLI 리스트를 보면 생각보다 많은 명령이 있어 당황할 수 있다. (23년 12월 기준 57개의 명령이 있다) 그래서 이해를 돕고자 카테고리를 정의하여 분류해 보았다. 주로 사용하는 명령 레지스트리 관련 Docker Hub 관련 명령으로 이미지 검색, 내려받기, 올리기 같은 명령이 있다. login, logout, search, pull, push … 이미지 관련 이미지 생성, 내려받은 이미지 리스트 조회, 이미지 삭제 같은 명령이 있다. build, images, rmi … 컨테이너 생명주기 관련 컨테이너 생성, 실행, 시작, 정지, 제거 같은 생명주기 명령이다. create, run, start, .. 2023. 12. 4.
3. Docker 사용을 위한 환경 이해하기 1. 도커 설치 환경에 대한 이해 도커를 사용하려면 docker engine 를 직접 받거나 docker-destop을 설치를 해야 한다. 하지만 설치 방법에 대한 내용은 따로 정리하지 않으려 한다. 그 대신 사용목적이나 OS 환경에 따른 차이에 대한 내용을 정리하려 한다. 1.1. 사용목적에 따른 설치 참고: docker 공식 | docker-desktop 도커를 사용하는 목적을 크게 2개로 나눌 수 있다. 운영환경에서 컨테이너 환경 사용 개발환경에서 컨테이너 환경 사용 운영환경을 위해서는 docker image를 빌드하고 이미지를 사용하여 컨테이너를 실행하고 관리해야 한다. 즉, docker engine의 컨테이너 라이브사이클을 관리하는 기능을 중점으로 사용한다. 개발환경에서는 편리한 개발환경 셋팅과.. 2023. 12. 1.
2. Docker란 1. 질문으로 알아보는 도커 💡 도커가 컨테이너 자체인가? A) 도커는 컨테이너 기술에 여러 기능을 추가한 오픈소스 프로젝트이다. 컨테이너 - 사전적 의미 어떤 물체를 격리하는 공간 각각의 컨테이너를 격리된 상태로 다른 컨테이너들과 분리 컨테이너 - 기술적 의미 컨테이너의 담긴 것들의 라이프 사이클을 관리한다. 즉, 컨테이너의 담긴 무언가의 생성 → 운영 → 제거까지 라이프 사이클 관리 ex) 스프링의 Servlet Container, Ioc Container, Bean Container 💡 가상화 관점에서 컨테이너란? A) 이미지에 따라 생성된 프로세스 단위의 격리환경이다. 즉, 컨테이너는 프로세스를 실행하기 위한 환경을 제공하고, 프로세스의 생명주기를 관리한다. 💡 spring boot와 Nginx를.. 2023. 11. 28.
1. Docker의 등장 배경 들어가기 전에 지난 2년이 조금 안 되는 시간 동안 현업에서도 개인적으로도 docker를 사용해 왔다. 그럼에도 내가 도커를 잘 아는가 확신할 수 없다. 도커는 사용하기 쉽다. 반면 기반 지식이 없이 도커가 무엇인지 설명하기 어렵다. 게다가 컨테이너 환경의 필요성을 모른다면 '도커가 굳이 왜 필요한가?'라고 생각할 수도 있다. 도커뿐만 아니라 어떠한 문제를 해결하기 위해 등장한 모든 기술이 그러하다고 생각한다. RDB와 OOP의 패러다임 불일치를 극복하기 위해 등장한 ORM 브라우저의 DOM API 헨들링의 한계를 극복하기 위해 등장한 SPA 프레임워크 온프레미스 (On-premise) 환경의 불편함을 극복하기 위해 등장한 클라우드 서비스 … 도커를 제대로 이해하기 위해서는 아래와 같은 기반 지식이 있어.. 2023. 11. 28.