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

参考链接: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后缀的证书私钥文件

												

基于 Docker 安装 Nginx 搭建静态服务器的更多相关文章

  1. 基于Docker和Golang搭建Web服务器

    1 场景描述 基于centos7的docker镜像搭建golang开发环境 在docker容器内,使用golang实现一个Web服务器 启动docker容器,并在容器内启动Web服务器 我购买了一个最 ...

  2. Centos7使用Docker安装Gogs搭建git服务器

    gihub地址:https://github.com/gogs/gogs gogs官网:https://gogs.io/ gihub官方docker安装gogs方法:https://github.co ...

  3. 阿里云CentOS7.3服务器通过Docker安装Nginx

    前言 小编环境: 阿里云CentOS7.3服务器 docker 下面分享一次小编在自己的阿里云CentOS7.3服务器上使用Docker来安装Nginx的一次全过程 温馨小提示: 如果只是希望单纯使用 ...

  4. windows环境下基于nginx搭建rtmp服务器

    基于nginx搭建rtmp服务器需要引入rtmp模块,引入之后需重新编译nginx linux环境几个命令行就能实现编译,笔者未尝试,网上有很多教程. windows环境还需要安装一系列的编译环境,例 ...

  5. Docker实战 | 第三篇:Docker安装Nginx,实现基于vue-element-admin框架构建的项目线上部署

    一. 前言 在上一文中 点击跳转 通过IDEA集成Docker插件实现微服务的一键部署,但 youlai-mall 是前后端分离的项目,除了后端微服务的部署之外,当然还少不了前端工程的部署.所以本篇讲 ...

  6. docker初识-docker安装、基于docker安装mysql及tomcat、基本命令

    一.docker是什么 用go语言开发,开源的应用容器引擎,容器性能开销极低 二.整体架构图 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 r ...

  7. Nginx,Nginx 搭建图片服务器

    Nginx Nginx 概述 反向代理 工作流程 优点 1:保护了真实的web服务器,保证了web服务器的资源安全 2:节约了有限的IP地址资源 3:减少WEB服务器压力,提高响应速度 4:其他优点 ...

  8. Linux、Docker安装Nginx

    Docker安装Nginx #docker images nginx #docker search nginx #docker pull nginx #docker run -it -p 8084:8 ...

  9. 基于Docker安装常用软件

    基于Docker安装常用软件 本实验介绍如何基于Docker安装常用的软件,具体包括: Ubuntu Cetnos Nginx Node.js PHP MySQL Tomcat Redis Mongo ...

  10. Nginx 搭建图片服务器

    Nginx 搭建图片服务器 本章内容通过Nginx 和 FTP 搭建图片服务器.在学习本章内容前,请确保您的Linux 系统已经安装了Nginx和Vsftpd. Nginx 安装:http://www ...

随机推荐

  1. Apache SSI远程命令执行漏洞复现

    漏洞原理:当目标服务器开启了SSI与CGI支持,就可以上传shtml文件,并利用语法执行任意命令,例如<!- - #exec cmd="ls"- ->,cmd后面跟要执 ...

  2. 商城登录/三方登录OAUTH2/单点登录

  3. SMW0 对应 MIME TYPE 无法包进请求上传

    SAP Notes - SAP for Me 2228060 - SMW0 Key entry for table MIMETYPES may only be generic Resolution S ...

  4. py09函数简介

    函数的返回值 # def func():# return 'asfjsfda'# res = func()# print(res) # 函数内要想返回给调用者值 必须用关键字return"& ...

  5. Dell CS24-SC 服务器详情

    详情介绍: https://www.viziotech.com/servers/58-dell-cs24-sc-dual-xeon-quad-core-l5420-25ghz-16gb-4x146gb ...

  6. (转载)私人问卷收集系统-Surveyking问卷收集系统

    前言 但凡提及问卷收集系统,问卷星与腾讯问卷通常都为大家首选问卷调查系统. 担心数据安全,海量问卷管理不便,工作流创建困难?快速部署自有问卷调查系统开始你的问卷调查之旅. 无论是问卷调查,考试系统,公 ...

  7. jjupyter notebook 修改存储位置和修改默认浏览器

    先jupyter notebook --generate-config 找到配置文件位置 打开这里的哪个文件 然后修改即可 1.修改默认打开目录找到 #c.NotebookApp.notebook_d ...

  8. C# Linq不同类型数组之间的转换

    string[] strArray = "a,b,c,d,e,f,g".Split(new char[]{ ',' }); int[] intArray; //C# 3.0下用此句 ...

  9. SQL Server性能优化

    源代码文件 1,什么是性能问题? 现有资源没有达到最大吞吐量的前提下,系统不能满足合理的预期表现,则可以定义为有性能问题.性能指标包括:响应时间,吞吐量,可扩展性. 2,初探优化 2.1优化论 一般遇 ...

  10. dendrogram

    https://ww2.mathworks.cn/help/stats/dendrogram.html