首页 > 运维 > Docker > 正文

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

WBOY
发布: 2022-02-15 17:50:02
转载
2456人浏览过

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

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

大家需要一台服务器,静态服务器配置需求不算很高,推荐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服务器类型的证书。

image.png

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中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:CSDN网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号