Traefik 代理背后的 Weblogic 控制台访问
Weblogic console access behind Traefik proxy
我有一个 Weblogic 服务器,它在 Traefik 代理服务器后面 运行。我能够毫无问题地访问 Weblogic 管理控制台。我遇到的问题是当我输入我的凭据时,我得到 用户名或密码已被 WebLogic Server 拒绝。请重试。但是当我直接使用容器 ip 访问控制台时,我能够登录。这告诉我 Traefik 和我的 Weblogic 容器之间有问题。
根据 Oracle 文章:https://support.oracle.com/knowledge/Middleware/2419265_1.html,我尝试设置以下 Header WL-Proxy-SSL=true。我仍然看到同样的问题。
截图如下:
这是我正在本地测试的 docker-compose 文件。
services:
reverse-proxy:
image: traefik:1.7.18-alpine
ports:
- "80:80" # The HTTP port
- "443:443" # The HTTPS port
labels:
- "traefik.enable=true"
- "traefik.port=8081"
- "traefik.frontend.rule=Host:docker.localhost"
volumes:
- /var/run/docker.sock:/var/run/docker.sock # So that Traefik can listen to the Docker events
- ./traefik/traefik.toml:/traefik.toml # Traefik configuration file
weblogic:
image: container-registry.oracle.com/middleware/weblogic:12.2.1.3
labels:
- "traefik.enable=true" # Enable reverse-proxy for this service
- "traefik.frontend.rule=Host:demo.docker.localhost"
- "traefik.passHostHeader=true"
- "traefik.frontend.headers.customRequestHeaders=WL-Proxy-SSL:true"
ports:
- 7001:7001
volumes:
- /Users/mtta/testing/properties:/u01/oracle/properties
environment:
DOMAIN_NAME: acme_domain
DOMAIN_HOME: /u01/oracle/user_projects/domains/acme_domain
ADMINISTRATION_PORT_ENABLED: "false"
通过设置以下内容:
- 将 RequestHeader WL-Proxy-SSL 设置为 true。
- 在 Weblogic 控制台中启用 WebLogic 插件。这是关于如何启用插件的 link:https://www.ateam-oracle.com/wls-plugin-enabled
完成这些设置后,控制台登录将在使用 SSL 的负载均衡器后进行。
我有一个 Weblogic 服务器,它在 Traefik 代理服务器后面 运行。我能够毫无问题地访问 Weblogic 管理控制台。我遇到的问题是当我输入我的凭据时,我得到 用户名或密码已被 WebLogic Server 拒绝。请重试。但是当我直接使用容器 ip 访问控制台时,我能够登录。这告诉我 Traefik 和我的 Weblogic 容器之间有问题。
根据 Oracle 文章:https://support.oracle.com/knowledge/Middleware/2419265_1.html,我尝试设置以下 Header WL-Proxy-SSL=true。我仍然看到同样的问题。
截图如下:
这是我正在本地测试的 docker-compose 文件。
services:
reverse-proxy:
image: traefik:1.7.18-alpine
ports:
- "80:80" # The HTTP port
- "443:443" # The HTTPS port
labels:
- "traefik.enable=true"
- "traefik.port=8081"
- "traefik.frontend.rule=Host:docker.localhost"
volumes:
- /var/run/docker.sock:/var/run/docker.sock # So that Traefik can listen to the Docker events
- ./traefik/traefik.toml:/traefik.toml # Traefik configuration file
weblogic:
image: container-registry.oracle.com/middleware/weblogic:12.2.1.3
labels:
- "traefik.enable=true" # Enable reverse-proxy for this service
- "traefik.frontend.rule=Host:demo.docker.localhost"
- "traefik.passHostHeader=true"
- "traefik.frontend.headers.customRequestHeaders=WL-Proxy-SSL:true"
ports:
- 7001:7001
volumes:
- /Users/mtta/testing/properties:/u01/oracle/properties
environment:
DOMAIN_NAME: acme_domain
DOMAIN_HOME: /u01/oracle/user_projects/domains/acme_domain
ADMINISTRATION_PORT_ENABLED: "false"
通过设置以下内容:
- 将 RequestHeader WL-Proxy-SSL 设置为 true。
- 在 Weblogic 控制台中启用 WebLogic 插件。这是关于如何启用插件的 link:https://www.ateam-oracle.com/wls-plugin-enabled
完成这些设置后,控制台登录将在使用 SSL 的负载均衡器后进行。