我正在评估 Jenkins X 在 Asp.NET 应用程序上管理 CI/CD。
- 我创建了一个新项目
[jx create quickstart aspnet-app][1]
所有工作都使用 gke,应用程序在端口 80 上可见。 - 我修改了应用程序以与dotnet core 2.2一起使用
-
应用程序现在在端口 443 上侦听 HTTPS 查询。
- 从
docker run
开始时效果很好。 - 当从 Jenkins 运行时,管道完成工作,将在 GKE 上创建并启动容器,但应用程序在端口 443 上不可用。
- 我变得
default backend - 404
而不是我的页面。
- 从
问题:我在哪里可以配置打开的端口。知道我可以在哪里调查吗?
附言:
- 当尝试通过http联系端口443时,我收到了来自nginx的400 The plain HTTP request was sent to HTTPS port
响应,这是一个非常好的迹象。
- 似乎与入口有关,如何通过 Jenkins X 配置入口?
谢谢你的任何提示。
Jenkins X,正如你可以在访问应用程序部分读到的,自动安装一个Nginx入口控制器,并且似乎你的控制器被配置为在同一服务器中使用SSL和非SSL。当您尝试通过http
访问时,Nginx需要SSL并为您提供错误。
您可以在此链接中看到 Stackoverflow 中的类似问题,您必须修改 nginx.conf 文件并在 SSL 行中添加注释:
server {
listen 80;
listen 443 default ssl;
# ssl on <--- comment the line
}