在Azure App Service部署Docker版Keycloak,无Ingress选项如何访问8443端口?
Azure App Service中Docker镜像的8443端口访问配置
一、核心配置逻辑
Azure App Service本身没有独立的Ingress配置入口,它通过平台反向代理统一对外暴露80(HTTP)和443(HTTPS)端口,内部容器的端口需要通过平台配置完成映射转发。
二、具体配置步骤
指定容器目标端口
- 进入你的App Service控制台,依次点击「配置」->「常规设置」。
- 在「容器端口」栏填写容器内Keycloak监听的
8443端口;或者在「应用程序设置」中添加环境变量WEBSITES_PORT,值设为8443,两种方式效果一致。 - 保存配置后,App Service会将外部的HTTPS流量转发到容器的8443端口。
启用HTTPS强制访问
- 进入「配置」->「TLS/SSL设置」,开启「HTTPS only」选项。
- 此时外部访问
https://<你的App Service域名>,流量会自动转发到容器的8443端口,直接访问Keycloak的HTTPS服务。
可选:简化SSL配置(推荐)
如果不想在容器内维护Keycloak的SSL证书,可以让App Service在平台层终止HTTPS,再转发HTTP流量到容器的8080端口:- 将「容器端口」或
WEBSITES_PORT设为8080。 - 开启「HTTPS only」,外部通过HTTPS访问时,App Service会自动将请求转为HTTP转发给容器的8080端口,Keycloak无需额外配置SSL。
- 将「容器端口」或
三、补充:Azure Container Apps自动停止问题解决
你之前遇到的3分钟无活动后服务停止,是因为Container Apps默认开启了闲置超时(Idle Timeout),默认时长3分钟。只需进入Container Apps控制台,依次点击「配置」->「缩放」,调整「闲置超时」的时长(可设为0表示永不超时)即可避免自动停止。
内容的提问来源于stack exchange,提问作者HelloWorld
相关产品推荐
相关产品推荐

