| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 使用docker部署nginx并配置https -> 正文阅读 |
|
[系统运维]使用docker部署nginx并配置https |
我只有一台服务器,但我想在这台服务器上运行多个项目,怎么办? 总不能靠加端口区分吧? 百度和Google是个好东西,于是我找到了答案,使用nginx。 通过nginx,我可以给我的一台服务器配置两个域名,然后通过不同的域名访问我的两个项目。 实现方式大概流程是这么玩的,你在服务器配置好nginx,让nginx监听80(http端口)和443(https端口),然后在nginx配置文件写明转发到哪里。 比如我有一个博客系统,还有一个邮件系统。 为了区分开,我给了这两个项目分别两个域名: 是的,这两个域名都是同属一个主域名 具体的配置过程其实也挺简单,我只在腾讯云配过,其他的平台应该大同小异,如果你不大了解,可以看看我的这篇文章:《腾讯云配置多个域名前缀》 回到nginx,两个域名有了,我要配置nginx的配置文件,要告诉nginx,当我访问 再配好ssl证书,就可以正常访问了。 ssl证书可以让你用https访问你的域名,如果你觉得http可以满足的话,那么不需要ssl也行。 具体实现思路有了,接下来便是一步一步完成。 看到标题会点进来的,我就当你对docker有一定了解了,这里就不提怎么安装docker了。 我们直接用docker安装nginx:
安装就只需要一个命令,连安装包都不用自己找,这就是我用docker的原因。 建目录用于存放nginx配置文件、证书文件:
nginx的ssl证书长这个样子,两个都要,中间打码的是你的域名: 把他们俩放到服务器的 查看内网的ip,记录下来,等下写配置文件要用:
接下来说说配置文件的一点注意事项。 了解docker的都知道,docker容器启动后,容器内部有自己的文件系统,配置文件也在里面。 因此我们需要把配置文件挂载到外部,就是我们的linux服务器上。 这样我们每次需要修改nginx的配置文件的时候,只要修改挂载到外部的文件,容器内的文件也会相应改变,能省很多功夫。 强烈建议挂载文件!!!不然的话会有很多坑,自身的血泪说出这句话。 要挂载文件,首先需要启动nginx,进去容器内部查看配置文件在哪里,并将其复制出来:
确定进入容器内部后,用下面两个命令查找nginx的配置文件在哪:
接下来退出容器(进入容器内部只是确认一下配置文件的位置而已):
使用docker的cp命令把这两个配置文件复制到刚刚建好的目录下:
保险起见,这个时候先不修改容器外部的配置文件,先挂载文件启动docker,启动成功了,确定没问题了,再去修改配置文件。 首先停掉之前的容器并删除:
带着挂载文件的命令启动nginx:
-p命令表示容器内部和外部监听的端口,这部分不细说。 使用下面的命令查看是否启动成功:
当nginx启动成功后,我们只需要修改配置文件,就可以实现多个域名和https访问的需求啦。 nginx的配置文件有两个, 点开看 我们只需要修改 这里粘一下linux编辑文本的命令:
修改
这上面便配好了一个域名的https和http访问,假如你想多配一个域名,拿我上面的
配置完毕后,保存、停止容器再重启:
打开浏览器,分别用http和https访问你配置的域名,来确认是否成功。 查看https是否生效,可以按下面的截图来查看: 关于ssl证书的坑如果你细心点,看我上面的配置文件会发现,两个server,随着域名的不同,ssl证书的名字也不一样了。 对的,对于每一个不同的子域名,我都需要去申请一个ssl证书。 对于 那么能不能申请一个通配的证书去适配一个主域名下的所有子域名呢。 有的,花钱。 别的平台我不太清楚,腾讯云有那种证书,比如你可以申请一个 但是我看了一下这种证书一年要花1600,像我这种穷逼还是算了,反正申请一个免费证书也花不了多少时间。 给你看看有钱人家和穷逼的区别: 我(穷逼),一个子域名一个证书: 腾讯云对于免费的证书限制是这样的:
好家伙,这是逼着我们去买通配证书啊,不过想了想,免费证书对我这种自己玩一玩的其实够用了。 20个项目,我是用不了那么多的,而且要真要那么多,我也多买几个服务器和域名了,腾讯还是良心的。(腾讯快给广告费!) 以上,参考自下面的内容: 《docker上启动nginx,并配置修改nginx的配置文件》 感谢各位大佬的无私教程! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 20:52:52- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |