Docker에 Nginx를 배포하는 방법

王林
풀어 주다: 2023-05-11 18:28:18
앞으로
3000명이 탐색했습니다.

1. docker

docker pull nginx
로그인 후 복사

에서 Nginx 이미지를 다운로드하고

여기에 파일을 넣습니다. docker에서 Nginx에 해당하는 디렉터리를 매핑하므로 파일을 컨테이너

mkdir -p /data/nginx/{conf,conf.d,html,logs}
로그인 후 복사

로 변경할 필요가 없습니다. 3. 파일의 정확성을 보장하기 위해 먼저 컨테이너에 들어가서 해당 파일을 복사하는 것이 좋습니다. 불편할 경우 두 개의 창을 열고 하나를 컨테이너에 입력하고 왼쪽에서 오른쪽으로 복사할 수 있습니다. . 파일이 올바른지 확인하기 위한 것입니다

#启动容器
docker run -itd nginx /bin/bash
#进入容器
docker attach xxxxxxxxxx
로그인 후 복사

Description구성 파일구성 파일 폴더홈페이지 폴더 html 경로로그 파일해당 마운트 디렉터리입니다. nginx.conf 파일과 conf.d의 default.conf를 해당 폴더에 복사한 후 수정합니다
FileMount pathnginx path
nginx.conf/data/nginx/conf/nginx . conf/etc/nginx/nginx.conf
conf.d 폴더/data/nginx/conf.d/etc/nginx/conf.d
html 폴더 /data/nginx/html/usr/share/nginx/html
로그 폴더/data/nginx/logs/var/log/nginx

4. 다음으로 default.conf 파일을 수정하면 됩니다

. 여기서 할 수 있는 일은 포트번호, 접근 경로 등을 바꾸는 것뿐입니다.

server {
 
    #端口号
    listen       80;
    #定义使用 localhost 访问
    server_name  localhost;
 
    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;
 
    location / {
        #根目录位置
        root   /usr/share/nginx/html;
        #index 文件位置
        index  1.html;
    }
 
    #error_page  404              /404.html;
 
    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
 
    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}
 
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}
 
    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}
로그인 후 복사

여기서 테스트에 사용된 1.html은 제가 직접 작성한 것입니다

<html>
<head>
<title>Mynginx</title>
</head>
<body>
<h2>
欢迎使用nginx!
</h2>
</body>
</html>
로그인 후 복사

5. 다음으로 컨테이너를 시작하면

docker run  --name myNginx -d -p 8089:80 -v /data/nginx/html:/usr/share/nginx/html -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/conf.d:/etc/nginx/conf.d  -v /data/nginx/logs:/var/log/nginx nginx
로그인 후 복사

마운팅 경로가 나옵니다. 잘못 쓰지 마세요

-p 8089:80 여기서 포트 80을 호스트의 포트 8089에 매핑하여 액세스가 포트 8089가 되도록 합니다. nginx의 기본 포트를 변경할 필요는 없습니다

그러면 컨테이너가 정상적으로 시작되는지 확인할 수 있습니다

docker ps
로그인 후 복사

컨테이너가 보이지 않으면 시작에 문제가 있는 것입니다. 구성 파일이 잘못 작성되었는지, 마운트 경로가 잘못된 것인지 확인하세요.

시작 후. 방금 작성한 1.index 페이지를 보려면 localhost:8089를 직접 탐색할 수 있습니다.

6. nginx를 중지하지 않고 구성 파일을 업데이트합니다.

구성 파일을 수정할 때 이 때 구성 파일을 업데이트해야 합니다. 창문 두 개를 열면 정말 멋지네요

#进入容器
docker exec -it xxxxxxxxxxx /bin/bash
 
#测试配置文件是否有问题
nginx -t
 
#要是显示 successful 就可以更新了
nginx -s reload
로그인 후 복사

위 내용은 Docker에 Nginx를 배포하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!