[关闭]
@adonia 2018-05-25T06:17:01.000000Z 字数 2192 阅读 168

nginx docker

nginx


  1. nginx docker ps -a
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. 6693be7a2d81 nginx "nginx -g 'daemon ..." 5 minutes ago Up 5 minutes 0.0.0.0:8080->80/tcp sad_allen

Tips: 启动完成后,可以在浏览器中访问http://localhost:8080检测服务启动是否正常。

为了方便配置nginx,需要把nginx的配置暴露在docker容器之外。
* 首先,将容器中的配置拷贝至本地:docker cp 6693be7a2d81:/ect/nginx /Users/adonia/workspace/nginx;拷贝完成后,在/Users/adonia/workspace/nginx目录下,会多出个nginx目录,重命名为conf。其下即为nginx的配置文件。

  1. nginx ll conf
  2. total 72
  3. drwxr-xr-x 3 adonia staff 96 4 30 21:55 conf.d
  4. -rw-r--r-- 1 adonia staff 1007 4 10 00:01 fastcgi_params
  5. -rw-r--r-- 1 adonia staff 2837 4 10 00:01 koi-utf
  6. -rw-r--r-- 1 adonia staff 2223 4 10 00:01 koi-win
  7. -rw-r--r-- 1 adonia staff 5170 4 10 00:01 mime.types
  8. lrwxr-xr-x 1 adonia staff 22 5 22 00:12 modules -> /usr/lib/nginx/modules
  9. -rw-r--r-- 1 adonia staff 643 4 10 00:01 nginx.conf
  10. -rw-r--r-- 1 adonia staff 636 4 10 00:01 scgi_params
  11. -rw-r--r-- 1 adonia staff 664 4 10 00:01 uwsgi_params
  12. -rw-r--r-- 1 adonia staff 3610 4 10 00:01 win-utf

配置文件入口nginx.conf内容如下:

  1. user nginx;
  2. worker_processes 1;
  3. error_log /var/log/nginx/error.log warn;
  4. pid /var/run/nginx.pid;
  5. events {
  6. worker_connections 1024;
  7. }
  8. http {
  9. include /etc/nginx/mime.types;
  10. default_type application/octet-stream;
  11. log_format main '$remote_addr - $remote_user [$time_local] "$request" '
  12. '$status $body_bytes_sent "$http_referer" '
  13. '"$http_user_agent" "$http_x_forwarded_for"';
  14. access_log /var/log/nginx/access.log main;
  15. sendfile on;
  16. #tcp_nopush on;
  17. keepalive_timeout 65;
  18. #gzip on;
  19. include /etc/nginx/conf.d/*.conf;
  20. }

三个需要定制化的配置:
1. nginx的配置文件目录(/etc/nginx -> /Users/adonia/workspace/nginx/conf)
2. nginx的日志目录(/var/log/nginx -> /Users/adonia/workspace/nginx/log)
3. nginx的静态文件目录(/usr/share/nginx/html -> /Users/adonia/workspace/nginx/html)

Tips: 需手动创建三个目录。

  1. docker run --rm -d -p 8080:80 --volume $PWD/conf:/etc/nginx --volume $PWD/log:/var/log/nginx --volume $PWD/html:/usr/share/nginx/html nginx
  1. <html>
  2. <body>
  3. <h3>hello world!</h3>
  4. </body>
  5. </html>
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注