본문 바로가기

docker

(5)
[Docker] Reverse Proxy 실습 구조 클라이언트(브라우저) │ ▲ │ │ ▼ │ Nginx Container │ ▲ │ │ ▼ │ Backend Container Step 1. Backed 서버에 대한 폴더 및 파일 생성먼저 실습 폴더(nginx-lab)에 새로운 디렉터리(backend)를 만든다.mkdir backend 그리고 다음 코드로 /backend/app.py 파일을 생성한다.from http.server import BaseHTTPRequestHandler, HTTPServerclass Handler(BaseHTTPRequestHandler): # HTTP GET 요청을 받으면 def do_GET(self): body = "Hello from B..
[Docker] Docker Compose 실습 목표: 컨테이너 실행에 필요한 설정을 코드로 선언하고 Docker Compose로 관리하기 Step 1. compose.yaml 파일 생성프로젝트 루트에서 다음 내용의 compose.yaml 파일을 생성한다.services: nginx: build: . container_name: my-nginx ports: - "8080:80" services:실행할 컨테이너들을 정의하는 영역 nginx:하나의 실행 단위(서비스)를 부르기 위한 이름(식별자)을 지정한 것으로예를 들어,services: nginx: backend: database:와 같이 확장하여 여러 컨테이너를 하나의 프로젝트 단위로 관리할 수 있으며서비스 식별자를 통해 특정 서비스만을 제어하거나 서로 다른 서비스..
[Docker] Nginx 설정 파일인 nginx.conf 이해하기 실습 목표 : Nginx가 HTTP 요청을 어떻게 처리할지 결정하는 프로그램인지 이해하기 Step 1. 실습 폴더 내부에 nginx.conf 파일 생성mkdir nginx && touch nginx/nginx.conf실습 폴더인 nginx-lab 폴더 내부에 nginx 폴더를 만들고 그 폴더 내부에 nginx.conf 파일 생성 Step 2. 작은 설정의 nginx.conf 작성events {}http { server { listen 80; location / { root /usr/share/nginx/html; index index.html; } }} events {} : 이 블록은 연결(Connection) 처리..
[Docker] Volume Mount 실습 실습 목표: 로컬 머신(Host)에 있는 내가 만든 HTML을 Docker 안의 Nginx(컨테이너)가 서비스하도록 만들기 Step 1. 실습용 디렉터리 생성mkdir nginx-lab && cd nginx-lab mkdir html && cd html Step 2. HTML 작성html 폴더에 index.html 파일을 생성한다. Hello Nginx! 이 페이지는 로컬 머신(Host)에 저장되어 있습니다. 이 부분에서 중요한 것은 해당 파일이 로컬 머신(Host)에 저장되어 있다는 점이다. Step 3. Volume Mount를 이용해 Nginx(컨테이너) 실행docker run -d --name my-nginx -p 8080:80 -v $(pwd):/usr/share/nginx/html ngi..
[Nginx] Docker로 Nginx 실행하기 Step 1. nginx 이미지 다운로드docker pull nginx - 정상적으로 이미지가 다운로드 되었는지 확인docker images Step 2. nginx 실행하기docker run -d --name my-nginx -p 8080:80 nginx 옵션 설명)-d : 백그라운드 실행--name my-nginx : 컨테이너의 이름을 my-nginx로 설정-p 8080:80 : 컨테이너 안에서 80번 포트를 사용하는 nginx를 로컬 머신에서 8080 포트로 접속하기 위해 연결 Step 3. 컨테이너 실행 확인docker ps Step 4. 웹 브라우저로 접속해보기브라우저에서 다음과 같은 주소로 접속합니다.http://localhost:8080 Step 5. 실행중인 컨테이너 내부 실제 서버 안..