带你搞懂怎么基于Docker安装Nginx搭建静态服务器
本篇文章给大家带来了关于怎么基于docker安装Nginx搭建静态服务器的相关知识,使用nginx
作为静态服务器是很常见的情况,下面主要就是讲通过docker
安装管理我们的nginx
,并配置ssl
证书来开启HTTPS
访问,希望对大家有帮助。
大家需要一台服务器,静态服务器配置需求不算很高,推荐1核2G
及以上。
一、安装 Docker
linux
服务器使用curl
下载快速安装的shell
脚本
curl -fsSL get.docker.com -o get-docker.sh
下载完成后,可以ls
命令查看一下。已经存在的话,使用sh
命令执行这个脚本
sh get-docker.sh
注意如果不是root
用户,需要使用sudo su
获取超级管理员权限。
安装完成后启动一下Docker Server
systemctl start docker
使用docker version
命令能看到Client
和Server
就启动成功了。
二、使用 Docker 安装 Nginx
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. 拷贝容器内配置文件到本地
docker container cp nginx:/etc/nginx /home/nginx/ cd /home/nginx mv nginx conf
3. 删除之前的容器
docker stop nginx docker rm nginx
4. 根据本地配置文件运行新容器
docker run -d -p 80:80 -p 443:443 --name nginx \ -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
服务器类型的证书。
2. 把证书解压后上传到证书文件夹
在conf/conf.d
创建cert
证书文件夹
cd /home/nginx/conf/conf.d mkdir cert
把刚才下载的证书上传到这个文件夹
3. 修改 nginx 配置开启 HTTPS 访问
vi /home/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视频教程》
以上是带你搞懂怎么基于Docker安装Nginx搭建静态服务器的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

PHP分布式系统架构通过将不同组件分布在网络互联的机器上实现可伸缩性、性能和容错性。该架构包括应用服务器、消息队列、数据库、缓存和负载均衡器。将PHP应用迁移到分布式架构的步骤包括:识别服务边界选择消息队列系统采用微服务框架部署到容器管理服务发现

概述LLaMA-3(LargeLanguageModelMetaAI3)是由Meta公司开发的大型开源生成式人工智能模型。它在模型结构上与前一代LLaMA-2相比没有大的变动。LLaMA-3模型分为不同规模的版本,包括小型、中型和大型,以适应不同的应用需求和计算资源。小型模型参参数规模为8B,中型模型参参数规模为70B,而大型模型参参数规模则达到400B。然而在训练中,目标是实现多模态、多语言的功能,预计结果将与GPT4/GPT4V相当。安装OllamaOllama是一个开源的大型语言模型(LL

答案:PHP微服务采用HelmCharts部署进行敏捷开发,并使用DockerContainer容器化以实现隔离和可扩展性。详细描述:使用HelmCharts自动部署PHP微服务,实现敏捷开发。Docker镜像允许对微服务进行快速迭代和版本控制。DockerContainer标准隔离微服务,而Kubernetes负责管理容器的可用性和可扩展性。利用Prometheus和Grafana监控微服务性能和健康状况,并创建告警和自动修复机制。

PiNetwork节点详解及安装指南本文将详细介绍PiNetwork生态系统中的关键角色——Pi节点,并提供安装和配置的完整步骤。Pi节点在PiNetwork区块链测试网推出后,成为众多先锋积极参与测试的重要环节,为即将到来的主网发布做准备。如果您还不了解PiNetwork,请参考Pi币是什么?上市价格多少?Pi用途、挖矿及安全性分析。什么是PiNetwork?PiNetwork项目始于2019年,拥有其专属加密货币Pi币。该项目旨在创建一个人人可参与

DeepSeek的安装方法有多种,包括:从源码编译(适用于经验丰富的开发者)使用预编译包(适用于Windows用户)使用Docker容器(最便捷,无需担心兼容性)无论选择哪种方法,请仔细阅读官方文档并充分准备,避免不必要的麻烦。

容器化通过以下方式提升Java函数性能:资源隔离-确保隔离的计算环境,避免资源争用。轻量级-占用较少系统资源,提高运行时性能。快速启动-减少函数执行延迟。一致性-解耦应用程序和基础设施,保证跨环境一致的行为。

使用Docker容器部署JavaEE应用程序:创建Dockerfile定义镜像、构建镜像、运行容器并映射端口,然后在浏览器中访问应用程序。示例JavaEE应用程序:RESTAPI与数据库交互,通过Docker部署后可在localhost访问。

答案:利用PHPCI/CD实现快速迭代,包括设置CI/CD管道、自动化测试和部署流程。设置CI/CD管道:选择CI/CD工具,配置代码存储库,定义构建管道。自动化测试:编写单元和集成测试,使用测试框架简化测试。实战案例:使用TravisCI:安装TravisCI,定义管道,启用管道,查看结果。实现持续交付:选择部署工具,定义部署管道,自动化部署。收益:提高开发效率、减少错误、缩短交付时间。
