目前网页大多以静态网页+ajax动态更新方式比较多,这样部署可以很好地前后端分离,让前端人员去处理网页,后端人员更多地去关心api。
部署这种网站一般是,nginx用于静态资源和javascript代码的存储,tomcat(如果后端java)用于动态返回数据。用户访问一个页面,nginx先返回静态资源和js代码,用户的浏览器执行js代码,发现js里面有ajax部分,动态地向api服务器发送 get/post指令去取对应的资源,api服务器得到指令之后交给对应的服务进行处理,如果有多个微型的api服务器,则架构方式为微服务模式,每个服务器的资源应该按照REST标准的资源访问规则来命名。
举个例子,用户访问 商城页面,“商城页面静态资源”返回,js向api服务器发送请求账户余额,得到账户余额填到对应的“商城页面静态资源”页面里替换掉原来的内容,同时js可能还向另一个api服务器发送请求用户头像,用户的屏蔽商品,需要向用户的推荐商品(recommanded system)等等,每个api服务器做自己的事情,一旦推荐商品服务正在升级,不会影响其他的服务,用户可以正常购买商品。
回到正题:
nginx的7层负载平衡可以很优秀处理大流量访问的问题,所以首先选择nginx作为主要的网站服务应用,由于docker可以很方便地架设服务,迁移服务,同时又不会污染环境,我们使用docker来控制不同的服务,let’s start.
1.安装docker && docker-compose
(安装这一类东西我一般用su用户直接安装,免加sudo)
yum install docker docker-compose -y
service docker start
我们用到docker-hub(hub.docker.com)里面的 nginx
2.架设nginx
docker pull nginx
Let’s Encrypt官方推荐的工具certbot(https://hub.docker.com/r/certbot/certbot)
docker pull certbot/certbot<

本文介绍了如何使用Docker、Nginx和Certbot手动部署HTTPS网站。通过Nginx作为静态资源和JavaScript代码的存储,结合Docker的便捷服务管理和Let's Encrypt的免费证书,实现前后端分离的网站架构。详细步骤包括安装Docker和Docker-compose,拉取Nginx镜像,以及使用Certbot申请SSL证书。
最低0.47元/天 解锁文章
1821

被折叠的 条评论
为什么被折叠?



