Docker nginx安装与文件挂载 柔光的暖阳◎ 2022-05-26 10:48 201阅读 0赞 在高并发访问的时候,一台tomcat完成是撑不住的,这时就需要做个tomcat集群了,使用nginx进行LB处理。那么先安装好nginx进行测试。 在win10中,下载好nginx,并进入解压好的目录,执行 start nginx即可以启动nginx了,只要在访问localhost页面上出现“Welcome to nginx!”等字样表示nginx安装成功了。这时可以使用jmeter进行压力测试,模拟3000个用户访问首页50次: ![这里写图片描述][70] 本机配置为: ![这里写图片描述][70 1] 本地压测的结果为: ![这里写图片描述][70 2] 可以看出qps可以达到1300多,但是失败率竟然高达88%多。这样完全不适合使用本地测试。虽然windows上应该也有很多方法进行调优,但是还得要去调查,太浪费时间了,而且服务器一般都部署在linux系统上,所以本地测试时可以使用docker进行测试。 # docker安装与使用 # 本人系统是win10系统,安装的docker是使用docker tools进行安装的,安装完成docker后,会自动安装好virtualbox的。进入docker页面,执行nginx安装命令 docker run -p 80:80 --name mynginx -d hub.c.163.com/library/nginx:latest 这里使用的是网易的镜像中心,使用官方的镜像中心的话速度太慢了。这样nginx就安装好了。安装好了后可以使用命令:docker-machine ip 查看docker的ip地址,我这里本地是192.168.99.100,准备ok后进行压力测试,一样是模拟3000个用户访问首页50次,得到的压测结果为: ![这里写图片描述][70 3] qps可以达到1100多,失败率在0.9%左右,只需要简单的操作就可以减少这么高的失败率,还有什么理由不用docker呢。 虽然以上的配置只是很简单的使用,肯定是有很多地方可以调整的,比如调整nginx的worker\_connections等来提升吞吐量。那么就需要自定义配置文件了,这里使用的是docker的挂载功能。 # 使用挂载配置 # 在对方答复 首先打开virtualbox,进入设置页面: ![这里写图片描述][70 4] 然后选择需要共享的文件目录,我这里共享了G盘下的docker目录 ![这里写图片描述][70 5] 添加完成后可以看到如下信息: ![这里写图片描述][70 6] 配置完成后,进入docker命令行,执行**docker-machine restart default**重启docker,重启完成后进入docker中,执行 **docker-machine ssh default** 进入docker容器中。执行mount命令查看挂载情况: ![这里写图片描述][70 7] 可以看出docker目录已经挂载成功了,挂载成功后对nginx配置文件进行共享了,首先执行nginx的命令修改为: docker run -p 80:80 --name mynginx -v /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -d hub.c.163.com/library/nginx:latest 这样本地的docker/nginx/conf/nginx.conf配置文件就映射到了nginx默认的配置文件了。当本地文件修改了,只需要执行 **docker exec -it mynginx bin/bash** 进入nginx容器中,然后执行**nginx -s reload** 配置重载就可以了。 这样是不是非常方便了,下一步就是需要将本地的tomcat部署到docker中,进行更好的本地压力测试了。 docker挂载参考文章:[https://segmentfault.com/q/1010000009469821/a-1020000009471289][https_segmentfault.com_q_1010000009469821_a-1020000009471289] [70]: /images/20220526/d57dc9474c274586812e23ea97a146b9.png [70 1]: /images/20220526/24df1ae9a0414bdca7b11280f92a075f.png [70 2]: /images/20220526/46c9bae8ff0541e09457b0b672efd189.png [70 3]: /images/20220526/4007f0cf5aca40da920b25b05ede8642.png [70 4]: /images/20220526/84c806f0366e43669283599eb0ed2ae0.png [70 5]: /images/20220526/fefe537216ae4533aff6e9da518bb8f2.png [70 6]: /images/20220526/a79daba56ca04a29882876a2c5368594.png [70 7]: /images/20220526/bf4ea67ca3284258ad2ec2258502a660.png [https_segmentfault.com_q_1010000009469821_a-1020000009471289]: https://segmentfault.com/q/1010000009469821/a-1020000009471289
还没有评论,来说两句吧...