今天在啓動一個docker 運行nginx實例,在掛載目錄時,出現訪問靜態目錄時,權限不夠html
執行的命令是:nginx
docker run
--name my-nginx
-d -p 80:80
--restart=always
-v /cloud/nginx/webroot:/usr/share/nginx/html:rw
-v /cloud/nginx/log:/var/log/nginx
-v /cloud/nginx/config/nginx.conf:/etc/nginx/nginx.conf:ro
-d nginx web
說明:docker
1.其中/cloud/nginx/webroot 是個人宿主機中目錄,用於存放靜態面頁rest
2./cloud/nginx/log 存放日誌日誌
3./cloud/nginx/config/nginx.conf 爲nginx的配置文件code
使用查看日誌命令顯示以下:server
2018/02/02 02:45:12 [error] 5#5: *1 "/usr/share/nginx/html/index.html" is forbidden (13: Permission denied), client: 10.11.3.51, server: localhost, request: "GET / HTTP/1.1", host: "10.11.3.86"
2018/02/02 02:45:12 [error] 5#5: *1 "/usr/share/nginx/html/index.html" is forbidden (13: Permission denied), client: 10.11.3.51, server: localhost, request: "GET / HTTP/1.1", host: "10.11.3.86"xml
後發現是宿主機的目錄權限不夠,因此果斷加上 參數:htm
--privileged=true
完整命令以下:
docker run
--name my-nginx
-d -p 80:80
--restart=always
--privileged=true
-v /cloud/nginx/webroot:/usr/share/nginx/html:rw
-v /cloud/nginx/log:/var/log/nginx
-v /cloud/nginx/config/nginx.conf:/etc/nginx/nginx.conf:ro
-d nginx
加上啓動容器,訪問就0k了