ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

基于 Docker 安装 Nginx 搭建静态服务器

2022-08-08 11:32:45  阅读:364  来源: 互联网

标签:ssl 证书 Nginx html conf 服务器 Docker nginx docker


最近一直在准备家里的服务器部署一个自己用的网站玩玩,一来是用来学习部署的线管知识,二来,后面有空学点前端,可以部署到自己网站玩玩。

 

参考链接:https://juejin.cn/post/7057403454473371661

 

docker的安装先跳过了,前面已经写过博客.

 

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

docker run -d -p 80:80 --name nginx \
 -v /home/nginx/html:/usr/share/nginx/html \
 -v /home/nginx/logs:/var/log/nginx \
 nginx:latest

 

2. 拷贝容器内配置文件到本地, [将容器内部的配置目录nginx赋值到用户本地目录下并改名目录名字为conf]

docker container cp nginx:/etc/nginx ~/nginx/conf

3. 删除之前的容器

docker stop nginx && docker rm nginx

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

docker run -d -p 80:80 -p 443:443 --name nginx \
 -v ~/nginx/conf:/etc/nginx \
 -v ~/nginx/logs:/var/log/nginx \
 -v ~/nginx/html:/usr/share/nginx/html \
 nginx:latest

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

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

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

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

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

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

 

三、配置 SSL 证书开启 HTTPS 访问[未操作, 后续操作跟新]

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

cd ~/nginx/conf/conf.d
mkdir cert

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

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

vi ~/nginx/conf/conf.d/default.conf

写入以下内容

server {
    #SSL 访问端口号为 443
    listen 443 ssl;
    #填写绑定证书的域名
    server_name 0101.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_timeout 5m;
    #请按照以下协议配置
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    location / {
    #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
        root /usr/share/nginx/html;
        index  index.html index.htm;
    }
}

server {
        listen 80;
        #填写绑定证书的域名
        server_name falser.top;
        #把http的域名请求转成https
        return 301 https://$host$request_uri;
}

需要改的地方:

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

ssl_certificate.crt后缀的证书文件

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

 


标签:ssl,证书,Nginx,html,conf,服务器,Docker,nginx,docker
来源: https://www.cnblogs.com/sidianok/p/16561207.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有