Stack/Docker 7

기본 브릿지 네트워크(Brideg Network)가 DNS를 제공하지 않는 이유

Docker 기본 브릿지 네트워크 특징Docker의 기본 브릿지 네트워크 (bridge) 는 컨테이너 간 DNS 이름 해석 기능을 제공하지 않는다는 특징이 있다.즉, 컨테이너끼리 IP 주소로만 통신해야 하고, 컨테이너 이름을 사용할 수 없다.💡 그 이유는 기본 브릿지 네트워크가 Docker의 "기본 네트워크" 역할을 하기 때문다.기본 네트워크는 단순하고 최소한의 기능만 제공하도록 설계되어 있다.DNS가 뭐지?DNS는 도메인 이름을 IP 주소로 변환하는 시스템이다. 예를 들어, 우리가 브라우저에서 google.com을 입력하면,google.com을 DNS 서버에 요청DNS 서버가 142.250.74.46 같은 IP 주소를 반환브라우저가 해당 IP로 접속즉, 사람이 이해하기 쉬운 이름 (google.com..

Stack/Docker 2025.04.04

바인드 마운트(Bind Mount) vs 볼륨 마운트(Volume Mount)

바인드 마운트와 볼륨 마운트는 둘 다 컨테이너와 호스트 간에 데이터를 공유하는 기능이다.하지만 저장 방식과 관리 방법에서 차이점이 있다.바인드 마운트(Bind Mount)📌 특징호스트의 특정 디렉토리를 컨테이너 내부에 연결하는 방식호스트의 디렉토리를 직접 사용하므로 도커가 데이터를 관리하지 않음컨테이너를 삭제해도 호스트의 원본 데이터는 유지됨단점 : 컨테이너 실행 중에는 마운트 경로를 변경할 수 없고, 호스트 시스템에 의존성이 생김📌 바인드 마운트 사용 예제docker run -d --name my-nginx -p 8080:80 \-v $(pwd)/mydata:/usr/share/nginx/html nginx$(pwd)/mydata → 호스트의 mydata 디렉토리를 사용/usr/share/nginx..

Stack/Docker 2025.04.03

웹서버(Web Server)란?

웹서버(Web Server)웹서버(Web Server)는 웹 클라이언트(웹 브라우저)로부터 HTTP 요청을 받아, 웹 페이지(HTML, CSS, JavaScript 등)를 제공하는 서버이다. 크롬, 엣지, 파이어폭스 같은 브라우저에 URL을 입력하면, 웹서버가 요청을 받아 웹사이트의 내용을 응답해준다.기본 동작 원리웹서버와 웹 브라우저(클라이언트)는 HTTP(HyperText Transfer Protocol) 또는 HTTPS(보안이 적용된 HTTP) 프로토콜을 사용해서 통신한다. 💡 웹서버의 기본 흐름1. 클라이언트(웹 브라우저)가 HTTP 요청을 보냄ex. 사용자가 https://www.example.com을 입력하면 브라우저가 웹서버로 요청을 보냄요청 형식 : GET /index.html HTTP/..

Stack/Docker 2025.04.02

도커(Docker) 볼륨(Volume)

볼륨(Volume) 활용Docker를 활용하면 특정 프로그램을 Container로 띄울 수 있다. 이 프로그램에 기능이 추가되면 새로운 Image를 만들어서 Container에 실행시켜야 한다. 이 때, Docker는 기존 Container에서 변경된 부분을 수정하지 않고, 새로운 Container를 만들어서 통째로 갈아끼우는 방식으로 교체한다. 기존에 만들어진 Image에 들어가서 변경된 부분을 억지로 수정하는 것보다, 이 방식이 효율적이라고 생각했던 것이다. 이러한 특징 때문에 기존 Container를 새로운 Container로 교체하면, 기존 Container 내부에 있던 데이터도 같이 삭제된다. 예를 들어, 만약 이 Container가 MySQL을 실행시키는 Container였다면, MySQL D..

Stack/Docker 2025.04.01

도커(Docker)를 사용하는 이유

현업에서 Docker를 사용하는 이유Docker는 다양한 장점이 있어 사용하는 이유에는 여러가지가 있지만, 그 중 핵심이되는 장점은 바로 '이식성'이다. 이식성 : 특정 프로그램을 다른 곳으로 쉽게 옮겨서 설치 및 실행할 수 있는 특성 예를 들면, 친구의 컴퓨터에 아무런 에러 없이 MySQL을 설치했지만, 내 컴퓨터에 똑같은 MySQL을 설치하려고 하니 에러가 발생하는 상황이 있다. 분명 친구가 설치한 방식대로 했지만, 에러가 발생하고 프로그램을 지우고 다시 설치해도 해결되지 않는다. 내 컴퓨터에만 MySQL 설치 에러가 발생하는 이유는 다양하다. 버전이 다른 걸 설치했거나, 운영체제(ex. Windows, macOS, Linux 등)가 다르거나, 내 컴퓨터에 깔려있는 다른 프로그램(ex. 보안 프로그램..

Stack/Docker 2025.03.31

도커(Docker), 컨테이너(Container), 이미지(Image)

도커(Docker)컨테이너를 사용하여 각각의 프로그램을 분리된 환경에서 실행 및 관리할 수 있는 툴🔎 Docker가 어떤 툴인지는 직접 사용해보는 것이 가장 빠르게 파악하는 방법이다.컨테이너(Container)Windows 환경을 보면 하나의 컴퓨터에 여러 사용자가 독립적인 컴퓨터 환경을 구성하여 사용할 수 있는 시스템이 있다. 각 사용자의 프로필에 들어가보면 독립적으로 구성되어 있어서 필요한 프로그램을 각 사용자 환경에서 따로 설치를 해주어야 한다. Container가 이러한 다중 사용자와 비슷한 개념이다. 하나의 컴퓨터 환경 내에 여러개의 미니 컴퓨터 환경을 구성할 수 있는 형태이다. 여기서의 미니 컴퓨터가 Container의 역할이다. 여기서 Container와 Container를 포함하고 있는 ..

Stack/Docker 2025.03.30

도커 Docker

Docker  Docker는 애플리케이션을 개발, 배포, 실행하기 위한 컨테이너 기반의 오픈 소스 플랫폼입니다.Docker를 사용하면 애플리케이션과 그 의존성을 컨테이너(Container)라는 표준화된 단위로 묶어서, 어디서든 실행할 수 있습니다. 한국말 맞나.. 설명을 들어도 모르겠다..ㅎ비유를 통한 예시 도커 = 공구 상자우리가 집에서 물건을 고치려고 하면, 필요한 도구를 공구 상자에 모두 모아 두듯이도커도 프로그램이 잘 작동하도록 필요한 모든 것을 한 상자에 담아서 어디에서든 실행할 수 있게 해준다왜 필요할까?집에서 물건을 고칠 때 망치, 드라이버, 못 같은 도구가 다 있어야 한다. 도구가 하나라도 없으면 일을 못 한다.도커는 프로그램이 실행되기 위해 필요한 모든 도구, 파일, 설정을 공구 상자처럼..

Stack/Docker 2024.12.14
반응형