[Docker] 컨테이너와 호스트 머신 간 통신하는 방법 한 번에 정리하기
·
Docker
컨테이너와 호스트 머신 간 통신 시 생기는 문제우리가 로컬에서 여러 애플리케이션을 실행하면, 해당 애플리케이션들과 통신하기 위해 localhost를 사용한다. 하지만, 컨테이너 위에서 실행되는 애플리케이션은 격리된 네트워크망 내부에 있기 때문에 localhost를 사용하면 호스트 머신에서 실행되는 애플리케이션과 통신하지 못한다. 호스트 머신에서 실행 중인 웹 애플리케이션과 Mongo DB의 통신을 생각해보자. Mongo DB가 27017번 포트를 점유해 실행된다고 할 때, 웹 애플리케이션에서 Mongo DB에 접속하기 위해서는 다음 주소를 사용하면 된다.mongodb://localhost:27017/[데이터 베이스 이름] 하지만 컨테이너 위에서 실행 중인 웹 애플리케이션과 호스트 머신에서 실행 중인 Mo..
[Docker] Dockerfile 사용해 스프링 애플리케이션 이미지 만들고 컨테이너 실행해보기
·
Docker
Dockerfile이란?Dockerfile은 Docker 이미지를 생성하기 위해 사용되는 스크립트 파일이다. 이 파일에는 이미지 생성 과정에서 수행될 명령어들이 순차적으로 작성되어 있으며, 이를 사용해 Docker 이미지를 빌드할 수 있다.  그러면 지금부터 스프링 애플리케이션을 위한 간단한 Dockerfile을 만들어보자. 코드는 다음 위치에 있다.* 이것은 예제를 위한 Dockerfile이고, 프로덕션을 위한 Dockefile은 더욱 복잡하게 만들어집니다. Code: https://github.com/seyoungcho2/DockerExample/tree/feature/1.simplespringdocker GitHub - seyoungcho2/DockerExample: Docker 연습을 위한 저장소..
Docker의 이미지와 컨테이너의 차이 알아보기
·
Docker
Docker 이미지와 컨테이너Docker의 이미지와 컨테이너는 Docker를 구성하는 핵심 요소로, 컨테이너 기반의 애플리케이션 개발 및 배포에 있어 매우 중요한 역할을 한다. 이 두 요소를 이해하면 Docker의 작동 원리와 장점을 명확히 파악할 수 있다. 이미지(Image)Docker 이미지는 컨테이너 실행을 위한 설정을 모아 놓은 읽기 전용 템플릿이다. 이미지에는 애플리케이션을 실행하는 데 필요한 모든 요소들이 포함되어 있다. 예를 들어 코드, 런타임, 라이브러리, 환경 변수 등이 포함되어 있다.  이미지의 주요 특징1. 불변성: 이미지는 읽기 전용으로 설계되어 있어 실행 중 변경되지 않아 환경을 표준화하는 데 유용합니다.2. 레이어 구조: 이미지는 여러 레이어(layer)로 구성되며, 변경 사항은..