docker部署前端,配置域名和ssl docker前端独立部署

docker部署前端,配置域名和ssl       之前使用80端口部署前端项目后,可以使用IP端口号在公网访问到部署的项目。 进行ICP域名备案后,可以通过域名解析将IP套壳,访问域名直接访问到部

使用80端口部署前端项目后,您可以通过IP+端口号在公网访问已部署的项目。

ICP域名注册后,可以通过域名解析封装IP,访问域名直接访问部署的项目~

如果想使用http协议,可以通过修改nginx.conf文件轻松实现。更多信息,请参阅Docker在服务器上部署多个前端- Docker部署的项目有两个前端怎么办?

server_name localhost;#这里把localhost改成你的域名即可

但是,当您通过http协议访问该网站时,您会收到一条消息,提示该网站不安全。要使用端口443 访问您的项目,您必须使用https 协议。

因此,您需要在您的服务器官网为您的域名申请SSL证书。申请成功后,将SSL 文件直接下载到您的本地。您可以检索这两个域名的.crt和.key文件。

首先进入服务器上的/etc/ssl/certs/目录,通过后续容器的启动将这两个文件挂载到nginx 内部的/etc/ssl/certs/目录中。否则,将安装ssl 文件。读取失败

接下来按照前面的前端部署方法,先在前端打包项目,得到dist文件夹。

转到您的服务器并在任意位置创建一个项目文件夹。然后放到dist文件夹下,开始创建其他文件

1.Dockerfile

# 使用NGINX作为基础镜像

来自nginx

# 将解压后的网站文件复制到NGINX默认路径

复制rme//usr/share/nginx/html/

# 将NGINX配置文件复制到容器内的NGINX配置目录中

复制default.conf /etc/nginx/conf.d/default.conf

2.默认配置

上游我的服务器{

服务器域名:8080; # 后端服务器地址

保持活力2000。

}

服务器{

听80。

#输入绑定证书的域名

server_name 域名,localhost;

#将http域名请求转换为https。这和用户访问http时自动跳转到https是一样的,避免出现不安全的网页提示。

返回值301 https://$host$request_uri;

}

服务器{

443 监听SSL。

server_name 域名.cn;

#证书文件名

ssl_certificate_key /etc/ssl/certs/域名.key;

#私钥文件名.crt 和.pem 都可以

ssl_certificate /etc/ssl/certs/域名.crt;

ssl_session_timeout 1d;

ssl_session_cache 共享:SSL:50m;

ssl_session_tickets 已关闭。

ssl_协议TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM- 56:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256 -SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256;

ssl_prefer_server_ciphers 已打开。

位置/{

根/usr/share/nginx/html;

try_files $uri $uri //index.html;

索引index.htmlindex.htm;

}

错误页面500 502 503 504 /50x.html;

位置=/50x.html {

根html;

}

}

3.set.sh

#!/bin/bash

# 构建一个名为test的Docker镜像

docker build -t 测试。

# 检查是否有构建好的镜像

如果docker镜像是grep -q test;

echo \’镜像测试已经存在。继续下一步……”

除此之外

echo \’错误:镜像测试不存在!请先构建镜像。 \’

1号出口

# 运行容器

#docker run -d -p 80:80 –name test 测试

# 创建一个新的nginx容器并配置SSL证书

docker run –name test -p 80:80 -p 443:443 -v /usr/local/nginx/logs:/var/log/nginx -v /etc/ssl/certs:/etc/ssl/certs –privileged=true -d – -restart=始终测试

# 检查容器是否正常运行

if docker ps -a –filter \’name=^test $\’ –format \'{{.Status}}\’ grep -q \’Up\’ |

echo \’容器测试运行成功!\’

除此之外

echo \’错误:容器测试执行失败!\’

在这里,您将在/etc/ssl/certs/目录中找到dist 前端资源文件夹、Dockerfile 镜像构建文件、default.conf nginx 配置文件以及ssl 证书文件和set.sh 执行脚本。

cd 到当前目录并输入./set.sh 以运行启动脚本。

完成~~~

以上#Docker部署前端、配置域名、SSL源网络等相关内容仅供参考。相关信息请参见官方公告。

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92330.html

(0)
CSDN的头像CSDN
上一篇 2024年6月26日
下一篇 2024年6月26日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注