docker 기반 Nginx 프로필 및 시작
개술
Nginx 는 고성능 HTTP 서버 / 리 버스 프 록 시 및 이메일 (IMAP / POP 3) 프 록 시 서버 입 니 다.러시아의 프로그래머 Igor Sysoev 가 개발 한 공식 테스트 Nginx 는 5 만 개의 병렬 링크 를 지탱 할 수 있 고 CPU, 메모리 등 자원 소 모 는 매우 낮 으 며 운행 이 매우 안정 적 이다.
Nginx 의 응용 장면
HTTP 서버: Nginx 는 HTTP 서 비 스 를 독립 적 으로 제공 할 수 있 는 HTTP 서비스 입 니 다.웹 페이지 정적 서버 를 만 들 수 있 습 니 다.
가상 호스트: 한 서버 에서 여러 사 이 트 를 가상 으로 만 들 수 있 습 니 다.예 를 들 어 개인 사이트 에서 사용 하 는 가상 호스트.
역방향 프 록 시, 부하 균형: 사이트 의 방 문 량 이 어느 정도 에 이 르 면 한 대의 서버 가 사용자 의 요 구 를 만족 시 키 지 못 할 때 여러 대의 서버 클 러 스 터 를 사용 하여 Nginx 를 역방향 프 록 시 로 할 수 있 습 니 다.또한 여러 대의 서버 는 평균 적 으로 부 하 를 분담 할 수 있 으 며, 한 서버 의 부하 가 높 아 지연 되 지 않 아 한 서버 가 방치 되 어 있 는 경우 도 없다.
docker - compose 기반 Nginx 빠 른 시작
docker-compose.yml
version: '3.1'
services:
nginx:
restart: always
image: nginx
container_name: nginx
ports:
- 81:80
volumes:
- ./conf/nginx.conf:/etc/nginx/nginx.conf
- ./wwwroot:/usr/share/nginx/wwwroot
주: 설정 파일 nginx. conf 가 필요 합 니 다.
가상 호스트 란 무엇 입 니까?
가상 호스트 는 특수 한 소프트 하드웨어 기술 로 네트워크 에 있 는 모든 컴퓨터 를 여러 개의 가상 호스트 로 나 눌 수 있 고 모든 가상 호스트 는 독립 적 으로 www 서 비 스 를 제공 할 수 있다. 그러면 한 대의 호스트 가 대외 적 으로 여러 개의 웹 서 비 스 를 제공 하 는 것 을 실현 할 수 있다. 모든 가상 호스트 간 은 독립 적 이 고 서로 영향 을 주지 않 는 다.
Nginx 를 통 해 가상 호스트 설정 을 실현 할 수 있 습 니 다. Nginx 는 세 가지 유형의 가상 호스트 설정 을 지원 합 니 다.
IP 기반 가상 호스트 도 메 인 이름 기반 가상 호스트 포트 기반 가상 호스트 Nginx 프로필 구조
# ...
events {
# ...
}
http {
# ...
server{
# ...
}
# ...
server{
# ...
}
}
주: 모든 server 는 가상 호스트 입 니 다.
포트 기반 가상 호스트 설정
Nginx 가 80 과 8080 두 개의 포트 감청 서 비 스 를 대외 적 으로 제공 해 야 합 니 다. 80 포트 는 html 80 디 렉 터 리 의 html 요청 8080 포트 는 html 8080 디 렉 터 리 의 html 생 성 디 렉 터 리 와 파일 을 / usr / local / docker / nginx / wwroot 디 렉 터 리 에 html 80 과 html 8080 두 개의 디 렉 터 리 를 만 들 고 index. html 파일 을 만 드 는 것 을 구분 합 니 다.
가상 호스트 수정 / usr / local / docker / nginx / conf 디 렉 터 리 에 있 는 nginx. conf 프로필 설정:
# , CPU
worker_processes 1;
events {
# epoll IO(I/O Multiplexing)
# linux2.6 , nginx
use epoll;
# worker process
worker_connections 1024;
}
http {
# mime , mime.type
include mime.types;
default_type application/octet-stream;
# sendfile nginx sendfile (zero copy ) , ,
# on, IO , off, I/O , uptime.
sendfile on;
#
keepalive_timeout 65;
#
client_header_buffer_size 2k;
# 192.168.75.145
server {
# ip , 192.168.75.145:80
listen 80;
# ip
server_name 192.168.75.145;
# / , location
location / {
# root
# http://ip/index.html /usr/local/docker/nginx/wwwroot/html80/index.html
# http://ip/item/index.html /usr/local/docker/nginx/wwwroot/html80/item/index.html
root /usr/share/nginx/wwwroot/html80;
# ,
index index.html index.htm;
}
}
# 192.168.75.245
server {
listen 8080;
server_name 192.168.75.145;
location / {
root /usr/share/nginx/wwwroot/html8080;
index index.html index.htm;
}
}
}
도 메 인 이름 기반 가상 호스트 설정
같은 Nginx 서버 를 가리 키 는 두 도 메 인 이름 이 필요 합 니 다.사용자 가 서로 다른 도 메 인 이름 에 접근 하여 서로 다른 웹 콘 텐 츠 를 표시 합 니 다. 두 도 메 인 이름 은 admin. 123. com 과 웹. 123. com Nginx 서버 에서 가상 컴퓨터 192.168.7.5.145 를 사용 하여 Windows Hosts 파일 을 host 파일 로 지정 합 니 다. admin. 123. com 과 웹. 123. com 은 192.168.7.5.145 가상 컴퓨터 에 대응 합 니 다. window 의 hosts 파일 을 수정 합 니 다. (C: \ Windows \ System 32 \ drivers \ etc)
디 렉 터 리 및 파일 생 성
/ usr / local / docker / nginx / wwroot 디 렉 터 리 에 html 서비스 와 html 웹 두 디 렉 터 리 를 만 들 고 index. html 파일 두 개 를 구분 합 니 다.
가상 호스트 설정
user nginx;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name admin.123.com;
location / {
root /usr/share/nginx/wwwroot/htmlservice;
index index.html index.htm;
}
}
server {
listen 80;
server_name web.123.com;
location / {
root /usr/share/nginx/wwwroot/htmlweb;
index index.html index.htm;
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
마이크로 서비스 간에feign을 통해 서로 호출되며, 크로스 서버 호출 시 이상이 발생: No route to host해결: feign이 다른 서비스를 호출하는 것도 eureka 등록센터 서비스를 획득하여 서비스가 등록된 IP에 문제가 있는지 추측하고 지정한 appId의 실례를 조회한다. eureka url/eureka/apps/{...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.