基于 Docker 安装 Nginx 搭建静态服务器
最近一直在准备家里的服务器部署一个自己用的网站玩玩,一来是用来学习部署的基础知识,二来,后面有空学点前端,可以部署到自己网站玩玩。
参考链接: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 搭建静态服务器的更多相关文章
- 基于Docker和Golang搭建Web服务器
1 场景描述 基于centos7的docker镜像搭建golang开发环境 在docker容器内,使用golang实现一个Web服务器 启动docker容器,并在容器内启动Web服务器 我购买了一个最 ...
- Centos7使用Docker安装Gogs搭建git服务器
gihub地址:https://github.com/gogs/gogs gogs官网:https://gogs.io/ gihub官方docker安装gogs方法:https://github.co ...
- 阿里云CentOS7.3服务器通过Docker安装Nginx
前言 小编环境: 阿里云CentOS7.3服务器 docker 下面分享一次小编在自己的阿里云CentOS7.3服务器上使用Docker来安装Nginx的一次全过程 温馨小提示: 如果只是希望单纯使用 ...
- windows环境下基于nginx搭建rtmp服务器
基于nginx搭建rtmp服务器需要引入rtmp模块,引入之后需重新编译nginx linux环境几个命令行就能实现编译,笔者未尝试,网上有很多教程. windows环境还需要安装一系列的编译环境,例 ...
- Docker实战 | 第三篇:Docker安装Nginx,实现基于vue-element-admin框架构建的项目线上部署
一. 前言 在上一文中 点击跳转 通过IDEA集成Docker插件实现微服务的一键部署,但 youlai-mall 是前后端分离的项目,除了后端微服务的部署之外,当然还少不了前端工程的部署.所以本篇讲 ...
- docker初识-docker安装、基于docker安装mysql及tomcat、基本命令
一.docker是什么 用go语言开发,开源的应用容器引擎,容器性能开销极低 二.整体架构图 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 r ...
- Nginx,Nginx 搭建图片服务器
Nginx Nginx 概述 反向代理 工作流程 优点 1:保护了真实的web服务器,保证了web服务器的资源安全 2:节约了有限的IP地址资源 3:减少WEB服务器压力,提高响应速度 4:其他优点 ...
- Linux、Docker安装Nginx
Docker安装Nginx #docker images nginx #docker search nginx #docker pull nginx #docker run -it -p 8084:8 ...
- 基于Docker安装常用软件
基于Docker安装常用软件 本实验介绍如何基于Docker安装常用的软件,具体包括: Ubuntu Cetnos Nginx Node.js PHP MySQL Tomcat Redis Mongo ...
- Nginx 搭建图片服务器
Nginx 搭建图片服务器 本章内容通过Nginx 和 FTP 搭建图片服务器.在学习本章内容前,请确保您的Linux 系统已经安装了Nginx和Vsftpd. Nginx 安装:http://www ...
随机推荐
- Chrome浏览器提示您的连接不是私密连接解决办法
解决方案: 是在当前页面用键盘输入 thisisunsafe ,不是在地址栏输入,就直接敲键盘就行了,页面即会自动刷新进入网页. 原因: 因为Chrome不信任这些自签名ssl证书,为了安全起见,直接 ...
- Java Maven环境搭建
下载 Maven 官网地址: https://maven.apache.org/ 点击左侧的 "Download" 下载 Files 下面的 zip 文件 推荐使用迅雷进行下载,速 ...
- hex 函数
python的内置函数. 一.作用: 用于将十进制数改为十六进制数,并以字符串的形式表示. 二.语法: hex(number) # 其中number为十进制的整数. 三.返回值: 以字符串形式表示的 ...
- c语言创建线程的函数封装
头文件xxx.h #include <stdlib.h> #include <pthread.h> #include <string.h> typedef int ...
- nmap扫描结果保存 xml to html for windows
首先 Nmap扫描443端口并保存为xml报告输出 nmap -T5 -Pn -p 443 -iL C:\Users\loki\Desktop\443_Scan.txt -oX C:\Users\lo ...
- sdp安装及实例
环境: sdpserver:192.168.1.160 sdpclient:192.168.1.161 安装 yum install gcc gcc-c++ libpcap* libtool* wge ...
- Dynamics CRM 安全模型的性能问题
性能问题对系统的影响可以是致命性的,一旦不重视,在不久的将来随时可能爆发,导致系统卡顿甚至无法操作,即时重启也无济于事:甚至极其难以发现.这里为自己记录一下过往的经验.系统一开始的设计,很大程度上决定 ...
- 两个DIV的切换
<html><head><title>HTML元素的显示与隐藏控制</title><script type="text/javascri ...
- PHP统计在线用户数量
一段经典的php统计在线用户数量的代码,一起学习分享. <?php /** * Created by PhpStorm. * User: jifei * Date: 15/11/24 * ...
- SQL SERVER 截断大日志文件
1.改成完整模式下,先完整备份,然后只备份事务日志2. 改成简单模式,然后截断(运行下边示例代码)3.再备份事务日志(观察LDF文件有没有变小)-----收缩大日志 SELECT * FROM sy ...