docker安装与配置nginx详细过程

第一步 pull nginx

命令:docker pull nginx 

第二步 启动nginx

命令:docker run --name nginx -p 80:80 -d nginx 

第三步 查看成果

1)命令查看是否启动,命令:docker ps 2)网页访问,浏览器输入IP地址回车,就可以看到 “Welcome to nginx!” 

原因:虽然咱们能正常启动nginx,但配置得在容器中进行,这样的话太麻烦了,所以把配置文件给映射出来,方便配置与管理
第一步 本地创建管理目录

命令: mkdir -p /data/nginx mkdir -p /data/nginx/www mkdir -p /data/nginx/conf mkdir -p /data/nginx/logs 

第二步 将容器中的相应文件copy到刚创建的管理目录中

docker cp 67e:/etc/nginx/nginx.conf /data/nginx/ docker cp 67e:/etc/nginx/conf.d /data/nginx/conf/ docker cp 67e:/usr/share/nginx/html/ /data/nginx/www/ docker cp 67e:/var/log/nginx/ /data/nginx/logs/ 注:docker cp 67e 中的 "67e" 为容器ID前缀,只要唯一就好了 

第三步 停止并移除容器

命令: 停止容器:docker stop 67e 移除容器:docker rm 67e 

第四步 再次启动容器并作目录挂载(也相当于共享)

命令: docker run --name nginx -p 80:80 -v /data/nginx/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/www/:/usr/share/nginx/html/ -v /data/nginx/logs/:/var/log/nginx/ -v /data/nginx/conf/:/etc/nginx/conf.d --privileged=true -d nginx 注:为了好看所以做了换行,执行的时候还是需要改成一行,每行一个空格隔开就可以了 

1、在location 中 echo “hello Nginx!” 访问可以直接输出文字

例: location / { echo "hello Nginx!" } 

2、location匹配规则:

1)最低级别匹配规则: location / { echo "hello Nginx!" } 2)最高级别匹配规则: location /user { echo "hello user.hmtl" } 3)其它级别匹配规则: location ^~ /user { echo "hello user.hmtl" } location ~^ /user { echo "hello user.hmtl" } location ~ ^/[a-z] { echo "hello user.hmtl" } location ~ ^/\a { echo "hello user.hmtl" } 

3、反向代理细节:

location /user { proxy_pass http://ip; } location /order/ { proxy_pass http://ip/; } 访问结果: http://ip/user/xx... http://ip/xx... 

4、负载均衡配置

upstream order { server 192.168.5.18:8080 weight=1; server 192.168.5.18:8081 weight=1; } server{ location /order/ { proxy_pass http://order/; } } 注:weight=1,配置的为权重,值越高权重越高 

原文链接:https://www.cnblogs.com/chuyi-/p/15201718.html

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享