如何使用docker部署keycloak?

Keycloak是一个开源的 oauth 用户认证和授权解决方案。使用 keycloak 开发者就不用自己实现用户管理功能了。

Keycloak 的教程中提供了 docker 部署教程,但是教程中使用的是 Keycloak 自己的 h2 数据库,默认暴露的是 http 端口,再最后验证阶段如果不是把 keycloak 部署在本机,使用 https://www.keycloak.org/app/ 是不能让开发者新建的用户登录的。

本文提供的 docker-compose 脚本可以帮助开发者解决这个问题。

version: '3'

# volumes:
#   postgres_data:
#       driver: local

services:
#   postgres:
#       image: postgres
#       volumes:
#         - postgres_data:/var/lib/postgresql/data
#       environment:
#         POSTGRES_DB: keycloak
#         POSTGRES_USER: keycloak
#         POSTGRES_PASSWORD: password
  keycloak:
      image: quay.io/keycloak/keycloak:latest
      environment:
        DB_VENDOR: POSTGRES
        DB_ADDR: 172.26.198.222
        DB_DATABASE: keycloak
        DB_USER: kong
        DB_SCHEMA: public
        DB_PASSWORD: kong
        KEYCLOAK_USER: admin
        KEYCLOAK_PASSWORD: admin
        # Uncomment the line below if you want to specify JDBC parameters. The parameter below is just an example, and it shouldn't be used in production without knowledge. It is highly recommended that you read the PostgreSQL JDBC driver documentation in order to use it.
        #JDBC_PARAMS: "ssl=true"
      ports:
        - 8082:8443
    #   depends_on:
    #     - postgres

上面的脚本让 keycloak 使用了其他服务提供的数据库。在官方脚本中默认暴露的是8080端口,在上面的脚本中暴露的是 8443 端口,这样我们就可以得到 https 服务了。只有基于 https 服务,官方示例的 web app 才能让开发者创建的用户登录。

参考链接:

https://stackoverflow.com/questions/49859066/keycloak-docker-https-required/49874353

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

surfirst

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值