docker 다운로드 nginx 설정 (프로필, 로그, 페이지 경로 문제)

3301 단어
문제.
docker 에 nginx 를 배치 하 는 것 은 정말 더 할 나 위 없 이 간단 합 니 다.
 #    
docker pull nginx
#      
docker run --name docker_nginx -d -p 80:80 docker.io/nginx

운행 하기 시작 했다
그런데 존재 하 는 문제점 은 1. 로그 가 어디 갔 지?2. 프로필 을 수정 하면 어떻게 하나 요?3. 프로젝트 파일 은 어디 에 두 나 요
일반적으로 해결 방법 은 파일 을 호스트 에 두 고 용기 에 마 운 트 하 는 것 입 니 다. 설정 파일 을 수정 하려 면 용기 docker exec -it containe_name bash 에 들 어가 서 설정 파일 을 다시 불 러 오 면 됩 니 다.
저 는 직접 끌 어 온 docker hub 의 nginx 미 러 입 니 다. 용기 에 있 는 위 치 는 로그 위치: nginx -s reload 설정 파일 위치: /var/log/nginx/ 항목 위치: /etc/nginx/해결 하 다.
질문
nginx 의 로 그 는 비교적 간단 합 니 다. 주로 access 와 error 로그 입 니 다. 숙주 디 렉 터 리 를 용기 에 nginx 로그 가 있 는 경로 로 마 운 트 하면 됩 니 다.
질문
설정 파일 은 상대 적 으로 귀 찮 습 니 다. 일반적으로 nginx. conf 를 불 러 오 면 됩 니 다. dokcer 에 서 는 nginx. conf 를 먼저 불 러 온 다음 nginx. conf 에 이러한 줄 /usr/share/nginx/html 이 있 습 니 다. 바로 conf. d 디 렉 터 리 에 있 는 설정 파일 을 불 러 오 는 것 입 니 다.따라서 설정 에 대해 서 는 conf. d 에 마 운 트 하고 덮어 쓰 면 됩 니 다.
질문
로그 와 같은 동작 입 니 다. 호스트 디 렉 터 리 를 용기 에 마 운 트 하면 됩 니 다.
실행 용기
1. 홈 기기 에 디 렉 터 리 만 들 기
mkdir -p /zzz/mynginx/nginx/log
mkdir -p /zzz/mynginx/nginx/conf
mkdir -p /zzz/mynginx/nginx/html

2. 용기 실행
docker run --name docker_nginx -d -p 80:80\ 
  -v /zzz/mynginx/nginx/log:/var/log/nginx\
  -v /zzz/mynginx/nginx/conf:/etc/nginx/conf.d\
  -v /zzz/mynginx/nginx/nginx.conf:/etc/nginx/nginx/conf\ 
  -v /zzz/mynginx/nginx/html:/lx/html\
  nginx
#########
   -v:      
   -v:      
   -v:            ,   
   -v:      

기타
1. 설정 파일 을 수정 하면: include /etc/nginx/conf.d/*.conf; 되 거나 dokcer exec -it docker_nginx nginx -s reload docker 용기 에 들 어가 면 nginx - s reload 가 됩 니 다.
명령 에 미치다
docker 용기 에서 명령 실행:
dokcer exec -it docker_nginx   
  dokcer exec -it docker_nginx bash        。

nginx 의 프로필 을 검증 하고 실제 사용 하 는 프로필 의 위 치 를 봅 니 다.
nginx -t

용기 정보 보기
docker inspect    

용기 마 운 트 상황 보기
docker inspect     | grep Mounts -A 20

프로필
/zzz/mynginx/nginx/conf/app.conf
server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /lx/html;
        index  index.html index.htm;
    }

    #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;
    #}
}

좋은 웹페이지 즐겨찾기