带你搞懂怎么基于Docker安装Nginx搭建静态服务器

本篇文章给大家带来了关于怎么基于docker安装Nginx搭建静态服务器的相关知识,使用nginx作为静态服务器是很常见的情况,下面主要就是讲通过docker安装管理我们的ngin...

本篇文章给大家带来了关于怎么基于docker安装Nginx搭建静态服务器的相关知识,使用nginx作为静态服务器是很常见的情况,下面主要就是讲通过docker安装管理我们的nginx,并配置ssl证书来开启HTTPS访问,希望对大家有帮助。

带你搞懂怎么基于Docker安装Nginx搭建静态服务器插图1

大家需要一台服务器,静态服务器配置需求不算很高,推荐1核2G及以上。

一、安装 Docker

linux服务器使用curl下载快速安装的shell脚本

curl-fsSLget.docker.com-oget-docker.sh

下载完成后,可以ls命令查看一下。已经存在的话,使用sh命令执行这个脚本

shget-docker.sh

注意如果不是root用户,需要使用sudo su获取超级管理员权限。

安装完成后启动一下Docker Server

systemctlstartdocker

使用docker version命令能看到Client和Server就启动成功了。

二、使用 Docker 安装 Nginx

1. 先运行一次 nginx,为了拷贝容器内配置文件到本地

dockerrun-d-p80:80--namenginx\-v/home/nginx/html:/usr/share/nginx/html\-v/home/nginx/logs:/var/log/nginx\nginx:latest

2. 拷贝容器内配置文件到本地

dockercontainercpnginx:/etc/nginx/home/nginx/cd/home/nginxmvnginxconf

3. 删除之前的容器

dockerstopnginxdockerrmnginx

4. 根据本地配置文件运行新容器

dockerrun-d-p80:80-p443:443--namenginx\-v/home/nginx/conf:/etc/nginx\-v/home/nginx/logs:/var/log/nginx\-v/home/nginx/html:/usr/share/nginx/html\nginx:latest

如果不需要配置ssl证书开启https访问,此时就可以把这个nginx当作普通静态服务器使用了。

其中/home/nginx中的几个文件夹:

conf:nginx的配置文件,具体配置可以看官网

html: 放静态资源,如html、css、js等

logs: 日志文件夹,访问的日志可以在其中查看

改了配置文件,记得通过docker restart nginx重启下nginx。

三、配置 SSL 证书开启 HTTPS 访问

1. 在云服务厂商申请 SSL 证书

我是在腾讯云申请的SSL证书,提交申请资料了,会让配置一个txt类型的域名解析,然后等待通过就行。

申请通过后,下载nginx服务器类型的证书。

带你搞懂怎么基于Docker安装Nginx搭建静态服务器插图3

2. 把证书解压后上传到证书文件夹

在conf/conf.d创建cert证书文件夹

cd/home/nginx/conf/conf.dmkdircert

把刚才下载的证书上传到这个文件夹

3. 修改 nginx 配置开启 HTTPS 访问

vi /home/nginx/conf/conf.d/default.conf

写入以下内容

server{#SSL访问端口号为443listen443ssl;#填写绑定证书的域名server_name0101.ml;#证书文件名称ssl_certificate/etc/nginx/conf.d/cert/0101.ml_bundle.pem;#私钥文件名称ssl_certificate_key/etc/nginx/conf.d/cert/0101.ml.key;ssl_session_timeout5m;#请按照以下协议配置ssl_protocolsTLSv1TLSv1.1TLSv1.2;#请按照以下套件配置,配置加密套件,写法遵循openssl标准。ssl_ciphersECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_cipherson;location/{#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。root/usr/share/nginx/html;indexindex.htmlindex.htm;}}server{listen80;#填写绑定证书的域名server_namefalser.top;#把http的域名请求转成httpsreturn301https://$host$request_uri;}

需要改的地方:

server_name: 改为自己的域名(两处)

ssl_certificate:.crt后缀的证书文件

ssl_certificate_key:.key后缀的证书私钥文件

产品猿社区致力收录更多优质的商业产品,给服务商以及软件采购客户提供更多优质的软件产品,帮助开发者变现来实现多方共赢;

日常运营的过程中我们难免会遇到各种版权纠纷等问题,如果您在社区内发现有您的产品未经您授权而被用户提供下载或使用,您可按照我们投诉流程处理,点我投诉

本文来自用户发布投稿,不代表产品猿立场 ;若对此文有疑问或内容有严重错误,可联系平台客服反馈;

部分产品是用户投稿,可能本文没有提供官方下下载地址或教程,若您看到的内容没有下载入口,您可以在我们产品园商城搜索看开发者是否有发布商品;若您是开发者,也诚邀您入驻商城平台发布的产品,地址:点我进入

如若转载,请注明出处:http://www.chanpinyuan.cn/34271.html;
(0)
上一篇 3天前
下一篇 3天前

相关推荐

发表回复

登录后才能评论
分享本页
返回顶部