1.docker pull nginx (不指定版本号,默认下载最新版本)
2.docker run -it -d --name mynginx -p 8080:8080 -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/www:/home/nginx/www --privileged --net=host nginx
:需要改动的一条命令,nginx.conf
3.
docker run:创建容器的命令
-i:表示运行容器
-t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
--name :为创建的容器命名。
-v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
-d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器)。
-p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射
4.
worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 端口号; server_name localhost; # Vue路由模式为history需添加的配置 location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.html?s=$1 last; break; } root /home/nginx/www; index index.html; } # 获取真实IP以及Websocket需添加的配置 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; # 客户端Body大小限制(文件上传大小限制配置) client_max_body_size 5m; error_page 500 502 503 504 404 /50x.html; location = /50x.html { root html; } } }
5.
docker start mynginx 启动 docker restart mynginx
docker stop mynginx 暂停
docker rm mynginx 移除