전체 글
-
[Docker] 도커 네트워크legacy/Docker 2024. 2. 18. 23:24
네트워크 기본을 기반으로 도커에서의 네트워크를 알아보겠습니다. Docker에서는 가상 네트워크 개념을 사용합니다. 가상 네트워크란 논리적으로 구성된 네트워크로, 하나의 물리적 네트워크 인터페이스를 기반으로 여러 개의 가상 네트워크를 생성할 수 있습니다. 가상 네트워크는 VLAN(Virtual LAN)과 같은 개념으로 사용될 수 있습니다. 도커도 가상 네트워크 개념을 사용합니다. 공인망으로부터 분리된 사설망 네트워크가 만들어지고, 사설망 내부에는 가상의 네트워크가 존재합니다. 네트워크 브릿지 위 사진을 보면 가상 네트워크 내부에 네트워크 브릿지가 존재합니다. 네트워크 브릿지란 도커 컨테이너 환경에서 네트워크를 관리하기 위한 기능입니다. 호스트와 컨테이너 간의 통신을 가능하게 하며, 컨테이너 간의 통신 또..
-
[Docker] 네트워크 기본legacy/Docker 2024. 2. 18. 21:23
공인 IP와 사설 IP 인터넷에서 컴퓨터 간에 데이터를 주고받기 위해서는 IP라는 통신 프로토콜이 필요합니다. IP는 전송 계층과 네트워크 계층 사이에서 데이터를 패킷 형태로 분할하고, 각 패킷에 출발지 및 목적지의 IP 주소를 지정합니다. 각 컴퓨터마다 고유한 IP 주소를 갖기 때문에 이를 통해 데이터를 주고받는 컴퓨터를 고유하게 식별할 수 있습니다. 공인 IP 공인 IP는 인터넷 서비스 제공자(ISP)로부터 할당되는 고유한 IP 주소입니다. 고유한 IP 주소이기 때문에 전 세계적으로 다른 인터넷 사용자들과 통신할 수 있습니다. 사설 IP 사설 IP는 내부 네트워크에서 사용되는 IP 주소입니다. 인터넷에 공인되지 않으며, 로컬 네트워크 내에서만 유요한 IP 주소입니다. 일반적으로 가정이나 사무실의 로컬..
-
[Docker] 이미지 빌드를 위한 Dockerfile 지시어legacy/Docker 2024. 2. 16. 00:34
이미지를 빌드하기 위해서는 build 명령어를 사용해야 합니다. 또한 빌드를 하기 위해서는 Dockerfile을 필요로 합니다. Dockerfile을 사용하여 이미지로 빌드할 때 사용하는 명령어에 대해서 알아보겠습니다. Dockerfile 빌드 기본적으로 Dockerfile을 빌드하기 위해서는 다음 명령어를 입력해야 합니다. Dockerfile이 존재하는 경로를 찾아 원하는 이미지명을 지정하여 이미지를 생성할 수 있습니다. $ docker build -t 이미지명 Dockerfile경로 위의 명령어는 빌드를 할 때 필요로 하는 도커파일의 이름을 Dockerfile로 인지하고 있습니다. 따라서 별도로 도커파일의 이름을 지정해주지 않았습니다. 그러나 도커파일명이 항상 Dockerfile 일 수가 없습니다. ..
-
[Docker] 이미지 커밋와 이미지 빌드legacy/Docker 2024. 2. 15. 16:45
새로운 이미지를 생성하는 방식으로 commit과 build 2가지 방법이 존재한다. Commit 방식은 현재 컨테이너의 상태를 이미지로 만드는 것이고, Build 방식은 Dockerfile을 만들고 이것을 이미지로 만드는 방식이다. 이미지 Commit Commit 방식은 컨테이너의 현재 상태를 이미지로 만드는 방식이다. 즉 컨테이너의 변경 사항을 이미지로 저장하는 방식이다. 컨테이너에서 변경된 파일 시스템의 스냅샷을 촬영하여 새로운 이미지를 생성한다. 여기서 스냅샷이란 해당 컨테이너의 파일 시스템과 생타를 특정 시점에서 저장하는 것을 말한다. 해당 시잠의 상태를 기록함으로써 컨테이너 상태를 복원하거나 이미지로 저장할 수 있다. Nginx 이미지로 생성한 컨테이너에 대해서 commit을 수행하는 과정은 다..
-
[Docker] 이미지 레이어와 컨테이너 레이어legacy/Docker 2024. 2. 15. 14:56
도커 컨테이너를 생성하기 위해서는 이미지가 필요로 합니다. Public 레지스트리에 저장된 이미지를 검색하여 다운로드할 수 있습니다. 우리가 다운로드한 이미지는 레이어 구조로 형성되어 있습니다. 이번 글에서 레이어의 개념에 대해서 알아보겠습니다. 이미지 레이어 Public 레지스트리에 업로드되어 있는 Nginx 이미지를 다운로드하여 보겠습니다. // nginx 이미지 다운로드 $ docker pull nginx 터미널에서 nginx 이미지를 다운로드하면 다음과 같이 레이어 구조를 볼 수 있습니다. 사실 Nginx 이미지 또한 레이어 구조로 생성된 이미지입니다. 이미지를 레이어 구조로 생성하는 이유는 다음과 같습니다. 공유 및 재사용 : 각 레이어는 독립적으로 관리되기 때문에 여러 application..
-
[Docker] 이미지 레지스트리legacy/Docker 2024. 2. 14. 09:57
이미지 레지스트리 이미지 스트리란 컨테이너 이미지를 저장하고 액세하는 데 사용되는 리포지토리입니다. GitHub의 경우 repository에 파일을 올리고 다운을 받을 수 있는 것처럼, DockerHub 또한 이미지 레지스트리에 저장된 이미지를 업로드 및 다운로드할 수 있습니다. 이미지 레지스트리는 아래 기능을 제공합니다. 이미지 공유 이미지 검색 이미지 버전 관리 보안 파이프라인 이미지 버전을 관리하기 때문에 특정 버전의 이미지를 다운받을 수 있고, 파이프라인 덕분에 이미지를 업로드할 시에 자동으로 배포할 수 있습니다. 퍼블릭 및 프라이빗 레지스트리 이미지 레지스트리의 경우 public과 private 유형이 존재합니다. 퍼블릭 레지스트리는 누구나 접근할 수 있는 공개된 레지스트리입니다. 공개적으로 배..