首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Docker和SSL部署Reactapp

问使用Docker和SSL部署Reactapp
EN

Stack Overflow用户
提问于 2021-11-08 07:50:49
回答 1查看 330关注 0票数 1

Dockerfile

Docker运行命令:docker run -itd -p 8080:80 prod

代码语言:javascript
复制
FROM node:16-alpine as builder
WORKDIR /app
COPY package.json ./
COPY package-lock.json ./
COPY . /app/

RUN npm install --silent
RUN npm install react-scripts@4.0.3 -g --silent
RUN npm run build
# production environment
FROM nginx:1.21.1-alpine
COPY --from=builder /app/build /usr/share/nginx/html

EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

defalut.conf文件

代码语言:javascript
复制
server {

listen 443 ssl default_server;
listen [::]:443 ssl default_server;

ssl_certificate /etc/nginx/sites-available/cert.crt;
ssl_certificate_key /etc/nginx/sites-available/ssl.key;

server_name ipaddress;

location / {
proxy_pass http://localhost:8080;
try_files $uri /index.html;
}

我无法在https中看到我的ip地址上运行的index.html文件。它在http://ipaddress:8080上工作得很好。上面是DockerFile的配置文件& default.conf文件。服务器日志中未显示任何内容。

我想知道上面的配置是否正确,或者是如何使用Docker & SSL & Nginx部署react-app

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-08 10:56:36

通过查看您的评论,您的端口配置似乎不正确,在NginX中,端口侦听设置为侦听端口443,但您的坞站端口配置使用端口80作为主机端口。假设节点服务器正在侦听端口8080,docker run应该如下所示

代码语言:javascript
复制
$ docker run -itd -p 443:443 prod

并尝试https://ipaddress,基于证书设置,您应该在浏览器中看到警告(如果证书不是完全信任的,您可能需要将其添加为异常),或者看到正确的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69880130

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档