>운영 및 유지보수 >엔진스 >Nginx Proxy Manager에서의 컨테이너 및 마이크로서비스 배포 전략

Nginx Proxy Manager에서의 컨테이너 및 마이크로서비스 배포 전략

WBOY
WBOY원래의
2023-09-27 13:06:331199검색

Nginx Proxy Manager下的容器与微服务的部署策略

Nginx 프록시 관리자에서 컨테이너 및 마이크로서비스 배포 전략에는 특정 코드 예제가 필요합니다.

요약:
마이크로서비스 아키텍처의 인기로 인해 컨테이너화 기술은 현대 소프트웨어 개발의 중요한 부분이 되었습니다. 마이크로서비스 아키텍처에서 Nginx Proxy Manager는 마이크로서비스 트래픽을 관리하고 프록시하는 데 매우 중요한 역할을 합니다. 이 문서에서는 Nginx 프록시 관리자를 사용하여 컨테이너화된 마이크로서비스를 배포 및 관리하는 방법을 소개하고 관련 코드 예제를 제공합니다.

  1. 소개
    마이크로 서비스 아키텍처는 대규모 애플리케이션을 여러 개의 독립적인 소규모 서비스로 분할하며, 각 서비스는 독립적으로 배포 및 유지 관리될 수 있습니다. Docker와 같은 컨테이너화 기술은 편리하고 빠르며 이식 가능한 배포 방법을 제공하여 마이크로서비스 아키텍처를 더욱 유연하고 확장 가능하게 만듭니다.
  2. Nginx 프록시 관리자 소개
    Nginx 프록시 관리자는 Nginx 기반의 역방향 프록시 관리 도구로, 여러 Nginx 역방향 프록시 서버를 쉽게 구성하고 관리할 수 있는 사용자 친화적인 웹 인터페이스를 제공합니다. 마이크로서비스 아키텍처에서 Nginx 프록시 관리자를 사용하여 다양한 마이크로서비스를 프록시하고 이들 간의 라우팅 및 로드 밸런싱을 관리할 수 있습니다.
  3. Nginx 프록시 관리자를 사용하여 마이크로서비스 배포
    다음은 Nginx 프록시 관리자를 사용하여 프런트엔드 서비스와 백엔드 서비스라는 두 개의 컨테이너화된 마이크로서비스를 배포하는 방법을 보여주는 간단한 예입니다.

먼저 두 개의 Docker 컨테이너를 만들어야 합니다. 하나는 프런트엔드 서비스 실행용이고 다른 하나는 백엔드 서비스 실행용입니다. 호스트 시스템에 Docker를 설치했다고 가정합니다.

3.1 프런트엔드 서비스 컨테이너
"frontend"라는 디렉터리를 만들고 이 디렉터리에 "Dockerfile"이라는 파일을 만듭니다. Dockerfile에서는 프런트엔드 서비스에 필요한 환경과 종속성을 정의하고 프런트엔드 코드를 컨테이너에 복사합니다.

샘플 Dockerfile 내용은 다음과 같습니다.

FROM nginx:1.17.9-alpine
COPY ./frontend /usr/share/nginx/html

그런 다음 명령줄에서 다음 명령을 실행하여 프런트엔드 서비스 컨테이너를 빌드하고 실행합니다.

docker build -t frontend:latest ./frontend
docker run -d --name frontend -p 8080:80 frontend:latest

3.2 백엔드 서비스 컨테이너
"backend"라는 디렉터리를 만들고 아래에 "Dockerfile"이라는 파일을 생성합니다. Dockerfile에서는 백엔드 서비스에 필요한 환경과 종속성을 정의하고 백엔드 서비스의 시작 명령을 실행합니다.

샘플 Dockerfile 콘텐츠는 다음과 같습니다.

FROM node:10-alpine
WORKDIR /app
COPY ./backend/package*.json ./
RUN npm install
COPY ./backend .
EXPOSE 3000
CMD [ "node", "index.js" ]

그런 다음 명령줄에서 다음 명령을 실행하여 백엔드 서비스 컨테이너를 빌드하고 실행합니다.

docker build -t backend:latest ./backend
docker run -d --name backend -p 3000:3000 backend:latest
  1. Nginx 프록시 관리자 구성
    다음에서 Nginx 프록시 관리자의 웹 인터페이스를 엽니다. 브라우저에서 로그인하고 구성하려는 프록시 서버를 선택하십시오. 두 개의 새 호스트 항목을 만들고 프런트 엔드 서비스의 프록시 대상을 컨테이너화된 프런트 엔드 서비스의 IP 주소 및 포트(예: http://containerIPaddress:8080)로 설정하고 백의 프록시 대상을 설정합니다. -컨테이너화된 서비스 종료 백엔드 서비스의 IP 주소 및 포트입니다(예: http://컨테이너 IP 주소:3000).
  2. 마이크로서비스 배포 테스트
    이제 브라우저에서 Nginx Proxy Manager의 프록시 서버 주소를 방문하면 프록시를 통해 프런트엔드 및 백엔드 서비스에 액세스할 수 있습니다. 예를 들어, 프런트엔드 서비스는 http://proxy 서버 주소/frontend를 통해 접속할 수 있고, 백엔드 서비스는 http://proxy 서버 주소/backend를 통해 접속할 수 있습니다.
  3. 결론
    이 문서에서는 Nginx 프록시 관리자를 사용하여 컨테이너화된 마이크로서비스를 배포 및 관리하는 방법을 소개하고 관련 코드 예제를 제공합니다. Nginx 프록시 관리자를 사용하면 개발자는 마이크로서비스 간의 라우팅 및 로드 밸런싱을 쉽게 구성하고 관리할 수 있으므로 애플리케이션 확장성과 유지 관리성이 향상됩니다.

그러나 위의 예는 단지 데모용일 뿐이며 실제 상황은 더 복잡할 수 있다는 점에 유의해야 합니다. 실제 배포 프로세스 중에 특정 요구 사항에 맞게 구성을 추가로 사용자 정의하고 조정해야 할 수도 있습니다.

위 내용은 Nginx Proxy Manager에서의 컨테이너 및 마이크로서비스 배포 전략의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.