好几年前,我 fork 了一个项目(https://github.com/Jeff-Tian/keycloak-heroku)并做了一些修改,将 Keycloak 适配到了 Heroku 的免费 Dyno 上,并添加了一键部署按钮。但是,如《Free Arch: Bye-bye to Heroku》所述,Heroku 不再免费。现在这个仓库,仍然可以一键部署到 Heroku 上,但是,可能产生费用。做为免费架构的拥趸,我必须找一个替代方案。
(相关资料图)
如果你看过我前面的文章,没错,是熟悉的味道:《免费架构:Heroku 不免费了,何去何从之 eggjs 的容器化部署之路》。
本文将参考上文,对 jeff-tian/keycloak-heroku 项目做一个改造,将它部署到 Okteto。
在线演示原来的 Heroku 站点是: https://keycloak.jiwai.win ,本来这个站点可以一直访问,Heroku 取消免费之后,我就将 Free Dyno 改成了最便宜的共享 Dyno,一个月 5 美元,但是每月有访问限额。如今只在月初可以访问,这个额度一旦用完就访问不了了。
替代方案部署在 Okteto,域名是: https://keycloak-jeff-tian.cloud.okteto.net/。
容器化要部署到 Okteto 以及任何一个 k8s 集群,第一步是需要将应用容器化。我看了一下,原来我已经将 keycloak-heroku 项目容器化了,只是一直没有部署到 k8s 环境里。
本地运行之前容器化后,只在本地以 docker compose up的方式运行,然后打开 http://localhost:8080 。
如今要部署到集群,正好可以重用。
Dockerfile项目里已经写好了 Dockerfile,只是文件名叫 Dockerfile.test:
FROM quay.io/keycloak/keycloak:latestCOPY idps/wechat-mobile/keycloak-services-social-weixin.jar \/opt/keycloak/providers/COPY idps/wechat-mobile/templates/realm-identity-provider-weixin-ext.html \/opt/keycloak/themes/base/admin/resources/partialsCOPY idps/wechat-mobile/templates/realm-identity-provider-weixin.html \/opt/keycloak/themes/base/admin/resources/partialsCOPY idps/wecom/keycloak-services-social-wechat-work.jar \/opt/keycloak/providers/COPY idps/wecom/templates/realm-identity-provider-wechat-work.html \/opt/keycloak/themes/base/admin/resources/partialsCOPY idps/wecom/templates/realm-identity-provider-wechat-work-ext.html \/opt/keycloak/themes/base/admin/resources/partialsCMD ["start-dev", "--hostname-strict=false"]打包脚本
要容器化打包,可以写个脚本来完成:
docker build -f Dockerfile.test -t jefftian/keycloak:"$1" .docker imagesdocker run --network host -e CI=true -d -p 127.0.0.1:8080:8080 --name keycloak:"$1" jefftian/keycloakdocker ps | grep -q keycloakdocker ps -aqf "name=keycloak$"docker push jefftian/keycloak:"$1"docker logs $(docker ps -aqf name=keycloak$)curl localhost:8080 || docker logs $(docker ps -aqf name=keycloak$)docker kill keycloak || echo "keycloak killed"docker rm keycloak || echo "keycloak removed"
注意它接收一个参数,用来做容器的标记:
SOPS由于要将项目跑起来,需要一些秘密数据,想将它们纳入代码管理,但又不想明文展示出来,那就可以利用 SOPS 了。详情可以参考上文《免费架构:Heroku 不免费了,何去何从之 eggjs 的容器化部署之路》,以及《加密 Kubernetes 集群中的敏感信息》。
配置 GitHub Action Secrets参考上文,在最终的 CICD 脚本中需要用到一些密码数据:
配置 CICD 流水线先准备一些 k8s 声明文件详见项目的 k8s 文件夹,有 secrets.yaml、deployments.yaml、service.yaml 以及 kustomization.yaml 文件。
准备 github workflow这个文件内容如下:
# This workflow will do a clean installation of node dependencies, build the source code and run tests across different versions of node# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actionsname: CICDon:push:branches: [ master ]pull_request:branches: [ master ]schedule:- cron: "0 */12 * * *"jobs:build-docker-image:runs-on: ubuntu-lateststeps:- uses: actions/checkout@v3- run: echo "${{secrets.DOCKER_PASSWORD}}" | docker login -u "${{secrets.DOCKER_USERNAME}}" --password-stdin- run: git_hash=$(git rev-parse ${{ github.sha }})- run: sh .github/dockerize.sh ${{ github.sha }}deploy-okteto:runs-on: ubuntu-latestneeds: build-docker-imagesteps:- uses: actions/checkout@v3- run: mkdir ${HOME}/.aws- run: echo -e "[lambda-doc-rotary]\naws_access_key_id = ${{secrets.AWS_ACCESS_KEY}}\naws_secret_access_key = ${{secrets.AWS_SECRET_KEY}}\n" > ~/.aws/config- run: wget https://github.com/mozilla/sops/releases/download/v3.7.3/sops-v3.7.3.linux.amd64- run: sudo cp sops-v3.7.3.linux.amd64 /usr/local/bin/sops- run: sudo chmod +x /usr/local/bin/sops- run: curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl- run: chmod +x ./kubectl- run: sudo mv ./kubectl /usr/local/bin/kubectl- run: mkdir ${HOME}/.kube- run: npm i -g k8ss- run: echo -e "machine github.com\n login ${{secrets.GH_TOKEN}}" > ~/.netrc- run: git clone https://github.com/Jeff-Tian/k8s-config.git ${HOME}/k8s-config- run: k8ss switch --cluster=okteto --namespace=jeff-tian- run: sops -d k8s/secrets.yaml --aws-profile lambda-doc-rotary | kubectl apply -f -- run: kubectl apply -k k8s- run: kubectl set image deployment keycloak keycloak=jefftian/keycloak:${{ github.sha }}
这个流水线的效果如下图:
完成: 部署到 Okteto部署到 Okteto 后:
打开自动分配的网址:
总结耶!我们又重新拥有了属于自己的免费的 Keycloak 实例!
上一篇:油漆稀释剂 焦点要闻
下一篇:最后一页
X 关闭
推荐内容
- 【免费架构】Heroku 不免费了,何去何从之 Keycloak 的容器化部署之路
- 油漆稀释剂 焦点要闻
- 海南退休工资计算公式2023 海南退休人员养老金上调新消息2022-2023-天天观焦点
- 侠盗飞车罪恶都市鼠标没反应_罪恶都市鼠标没反应
- 天天观察:王者意识操作锻炼_王者荣耀意识锻炼游戏
- 世界今热点:畜牧兽医职业认知怎么写_职业认知怎么写
- 大明衣冠
- 世界热推荐:湖州银行 IPO 申请获上交所受理,去年上半年不良率 0.68% 但贷款行业集中度较高或存风险
- 3月7号女神节送什么礼物(3月7号女神节) 当前快讯
- 2023年大年初三是阳历哪一天 正月初三的传统习俗有哪些 世界热推荐
- 世界百事通!川陕甘将推进大熊猫保护科研成果共享,建立健全联合调查机制
- 快速还原魔方的技巧_魔方的技巧_天天新消息
- 重庆最低工资标准2023年多少_2023年重庆最低工资标准一览表
- 环球关注:基金亏了50%了死守能回来本金吗?基金亏了50%赚回来难吗?
- 幂_今日热门
- 圆锥的母线是啥意思_圆锥的母线是那条线
- 爱格上的好看的都市言情小说-环球快看点
- 北京白云观在哪个地方_请问北京的白云观在什么位置
- 【环球新视野】无人机吊运香蕉 云南元阳种植户有了新帮手
- 【速看料】荣威550
- 卤_说一说卤的简介
- 电脑连接WIFI受限_电脑连wifi受限_天天视讯
- 天天快消息!早上憋尿小腹胀痛怎么回事_小腹胀痛怎么回事
- 撼讯RX 7900 XTX显卡超频:463W功耗换来7%性能提升 天天快消息
- 胡碟
- 03月06日从湖州出发到商丘的防疫政策
- 小雪节气的由来和风俗 小雪的来历和故事
- dnf传承装备上的技能宝珠能不能继承到深渊之_dnf传承装备
- 陶粒
- 世界热头条丨一客机在俄罗斯西北部城市起飞时冲出跑道致机场暂时停运
- 世界观热点:正义联盟扎克施耐德版
- 栋笃神探国语全集免费观看_栋笃神探演员表 热点
- 汽车倒桩技巧_环球今日讯
- 热点评!写好三八节文案,看这一篇就够了!
- 中科创达:公司采用的是多传感器融合的多模态方案 世界动态
- 书匀结婚视频直播_书匀结婚视频直播_最资讯
- 哥字的笔顺_哥字的笔顺 滚动
- 环球要闻:瀛商网
- 世界快讯:特朗普宣布美司法部长将离职 为什么要离职?
- 环球热门:春夏秋冬的词语
- 富祥药业拟对两家全资子公司增资 以推动公司募投项目顺利实施
- 什么是玻璃钢
- 七字的笔顺的近义词 快看点
- 焦点精选!psp是什么游戏_psp是什么
- 呼吸过度动漫全集完整_呼吸过度动漫全集观看
- 天天观热点:董璇个人资料简介
- 杜鹃可以放在室内养吗 杜鹃可以放在室内的吗 全球快看
- 北大数学大神为何走哪都拎矿泉水 矿泉水已成为他的标识
- 环球快资讯:外贸服装店起名
- 【新要闻】花滑世青赛女子单人滑,中国“小花”安香怡排名第六
- 世界热推荐:什么是下划线
- 天天观速讯丨孙田莉子家庭背景_孙田莉子
- 正美物业注册资本增至5000万元,业务新增住宅室内装饰装修等 全球资讯
- 【世界新视野】2023年上半年北京小客车指标申报注意事项
- 大同旅游线路地图_大同旅游景点地图|天天速看
- 天天快资讯:液化气灶与天然气灶哪个好_燃气灶液化气和天然气的区别
- 焦点日报:2个字的网名_好听二字网名大全
- 【天天新视野】2020一起赢
- 白面发糕 教学 用智能发糕机做发糕_怎样用发糕机做发糕
- 《最强大脑》十周年,见证近600位选手的372个挑战项目
- 世界时讯:注意!中工国际将于3月17日召开股东大会
- 世界动态:74式37毫米双管高射炮系统
- 天天视点!万讯自控: 关于持股5%以上股东股份减持计划期限届满的公告
- 世界速递!员工自我评价缺点简短30字_自我评价优缺点员工
- jb2转换PDF格式的方法步骤|环球热议
- 苹果平板ipad怎么连接电脑_ipad平板电脑怎么连接电脑
- 全面注册制下新股发行定价博弈加剧:卖方“经验在手” 买方“责任我有”|焦点快播
- 梦幻西游菩提岛现在是哪个区_菩提岛和月坨岛哪个好_热门看点
- 深科达:连续4日融资净买入累计429.8万元(02-28)
- 如何让手机不会发烫_10招让你手机不发烫
- OSPF中的loopback接口_ospf lookback
- 今天最新消息 今年超2万亿元退税款已退至纳税人账户
- 热点评!我国人口最多的省区是人口最少的省区是_我国人口最多的省区是
- 观焦点:【奔流文化·寻陇】盐井非井,一口“宝瓶”隐藏的秘密
- 关于秋的作文800左右
- 节点大样图_节点
- 抚顺新型冠状病毒肺炎疫情:2月28日抚顺疫情最新消息今天数据统计情况通报
- 当前最新:深圳一类门诊特定病种有哪些2023
- 全球今热点:A股午评:沪指冲高回落涨0.07%,中药 数字经济等板块领涨
- sludge-观速讯
- 中国足彩网竞彩28日推荐:尤文图斯拿下德比战 环球新要闻
- 同在屋檐下演员表_同在屋檐下有哪些演员 环球微动态
- 当前讯息:二本a类大学排名文科_二本a类大学排名
- 视讯!或2024年年初上市斯柯达全新一代柯迪亚克最新谍照曝光
- 汉阳区人大到楚天高速开展“纳税百强企业营商环境大调研”
- 全球今亮点!热景生物:新冠抗原检测试剂产品销售单价显著降低,2022年年归母净利润11.19亿元,同比下降48.78%
- 七月酥 当前快看
- 2月27日两市共有70只个股发生大宗交易 中国人保溢价10.31%_热资讯
- 新诺威董秘回复:阿卡波糖为一种α-葡萄糖苷酶抑制剂
- 当前快看:国家赔偿法涉及财产的法律有哪些
- 焦点快报!活性肽的生理功能_生物活性肽是什么
- 港股午评:恒指跌0.75% 海底捞逆市大涨13%
- 499欧起!小米13 Lite海外发布:用上居中药丸打孔屏_当前要闻
- 打击者1945
- 快播:成本砍砍砍!马斯克的推特继续裁员
- 学而思作文课哪个老师讲的好_学而思作文大全
- 每日快看:英雄少年
- 微创 上海医疗科学投资有限公司-当前热门
- PR2022中文版 PremierePro2021v15.4.1最新下载安装 简体中文版破解教程-当前热讯
- 曹方
精彩推荐
-
【免费架构】Heroku 不免费了,何去何从之 Keycloak 的容器化部署之路2023-03-08
-
油漆稀释剂 焦点要闻2023-03-08
-
海南退休工资计算公式2023 海南退休人员养老金上调新消息2022-2023-天天观焦点2023-03-08
-
侠盗飞车罪恶都市鼠标没反应_罪恶都市鼠标没反应2023-03-08
-
天天观察:王者意识操作锻炼_王者荣耀意识锻炼游戏2023-03-08
-
世界今热点:畜牧兽医职业认知怎么写_职业认知怎么写2023-03-08
-
大明衣冠2023-03-08
-
3月7号女神节送什么礼物(3月7号女神节) 当前快讯2023-03-08
-
2023年大年初三是阳历哪一天 正月初三的传统习俗有哪些 世界热推荐2023-03-07
-
世界百事通!川陕甘将推进大熊猫保护科研成果共享,建立健全联合调查机制2023-03-07
-
快速还原魔方的技巧_魔方的技巧_天天新消息2023-03-07
-
重庆最低工资标准2023年多少_2023年重庆最低工资标准一览表2023-03-07
-
环球关注:基金亏了50%了死守能回来本金吗?基金亏了50%赚回来难吗?2023-03-07
-
幂_今日热门2023-03-07
-
圆锥的母线是啥意思_圆锥的母线是那条线2023-03-07
-
爱格上的好看的都市言情小说-环球快看点2023-03-07
-
北京白云观在哪个地方_请问北京的白云观在什么位置2023-03-07
-
【环球新视野】无人机吊运香蕉 云南元阳种植户有了新帮手2023-03-07
-
【速看料】荣威5502023-03-07
-
卤_说一说卤的简介2023-03-07
-
电脑连接WIFI受限_电脑连wifi受限_天天视讯2023-03-07
-
天天快消息!早上憋尿小腹胀痛怎么回事_小腹胀痛怎么回事2023-03-07
-
撼讯RX 7900 XTX显卡超频:463W功耗换来7%性能提升 天天快消息2023-03-07
-
胡碟2023-03-06
-
03月06日从湖州出发到商丘的防疫政策2023-03-06
-
小雪节气的由来和风俗 小雪的来历和故事2023-03-06
-
dnf传承装备上的技能宝珠能不能继承到深渊之_dnf传承装备2023-03-06
-
陶粒2023-03-06
-
世界热头条丨一客机在俄罗斯西北部城市起飞时冲出跑道致机场暂时停运2023-03-06
-
世界观热点:正义联盟扎克施耐德版2023-03-06
-
栋笃神探国语全集免费观看_栋笃神探演员表 热点2023-03-06
-
汽车倒桩技巧_环球今日讯2023-03-06
-
热点评!写好三八节文案,看这一篇就够了!2023-03-06
-
中科创达:公司采用的是多传感器融合的多模态方案 世界动态2023-03-06
-
书匀结婚视频直播_书匀结婚视频直播_最资讯2023-03-06
-
哥字的笔顺_哥字的笔顺 滚动2023-03-06
-
环球要闻:瀛商网2023-03-05
-
世界快讯:特朗普宣布美司法部长将离职 为什么要离职?2023-03-05
-
环球热门:春夏秋冬的词语2023-03-05
-
富祥药业拟对两家全资子公司增资 以推动公司募投项目顺利实施2023-03-05
-
什么是玻璃钢2023-03-05
-
七字的笔顺的近义词 快看点2023-03-05
-
焦点精选!psp是什么游戏_psp是什么2023-03-05
-
呼吸过度动漫全集完整_呼吸过度动漫全集观看2023-03-05
-
天天观热点:董璇个人资料简介2023-03-05
-
杜鹃可以放在室内养吗 杜鹃可以放在室内的吗 全球快看2023-03-05
-
北大数学大神为何走哪都拎矿泉水 矿泉水已成为他的标识2023-03-04
-
环球快资讯:外贸服装店起名2023-03-04
-
【新要闻】花滑世青赛女子单人滑,中国“小花”安香怡排名第六2023-03-04
-
世界热推荐:什么是下划线2023-03-04
-
天天观速讯丨孙田莉子家庭背景_孙田莉子2023-03-04
-
正美物业注册资本增至5000万元,业务新增住宅室内装饰装修等 全球资讯2023-03-04
-
【世界新视野】2023年上半年北京小客车指标申报注意事项2023-03-02
-
大同旅游线路地图_大同旅游景点地图|天天速看2023-03-02
-
天天快资讯:液化气灶与天然气灶哪个好_燃气灶液化气和天然气的区别2023-03-02
-
焦点日报:2个字的网名_好听二字网名大全2023-03-02
-
【天天新视野】2020一起赢2023-03-02
-
白面发糕 教学 用智能发糕机做发糕_怎样用发糕机做发糕2023-03-02
-
《最强大脑》十周年,见证近600位选手的372个挑战项目2023-03-01
-
世界时讯:注意!中工国际将于3月17日召开股东大会2023-03-01
-
世界动态:74式37毫米双管高射炮系统2023-03-01
-
天天视点!万讯自控: 关于持股5%以上股东股份减持计划期限届满的公告2023-03-01
-
世界速递!员工自我评价缺点简短30字_自我评价优缺点员工2023-03-01
-
jb2转换PDF格式的方法步骤|环球热议2023-03-01
-
苹果平板ipad怎么连接电脑_ipad平板电脑怎么连接电脑2023-03-01
-
全面注册制下新股发行定价博弈加剧:卖方“经验在手” 买方“责任我有”|焦点快播2023-03-01
-
梦幻西游菩提岛现在是哪个区_菩提岛和月坨岛哪个好_热门看点2023-03-01
-
深科达:连续4日融资净买入累计429.8万元(02-28)2023-03-01
-
如何让手机不会发烫_10招让你手机不发烫2023-03-01
-
OSPF中的loopback接口_ospf lookback2023-03-01
-
今天最新消息 今年超2万亿元退税款已退至纳税人账户2023-02-28
-
热点评!我国人口最多的省区是人口最少的省区是_我国人口最多的省区是2023-02-28
-
观焦点:【奔流文化·寻陇】盐井非井,一口“宝瓶”隐藏的秘密2023-02-28
-
关于秋的作文800左右2023-02-28
-
节点大样图_节点2023-02-28
-
抚顺新型冠状病毒肺炎疫情:2月28日抚顺疫情最新消息今天数据统计情况通报2023-02-28
-
当前最新:深圳一类门诊特定病种有哪些20232023-02-28
-
全球今热点:A股午评:沪指冲高回落涨0.07%,中药 数字经济等板块领涨2023-02-28
-
sludge-观速讯2023-02-28
-
中国足彩网竞彩28日推荐:尤文图斯拿下德比战 环球新要闻2023-02-28
-
同在屋檐下演员表_同在屋檐下有哪些演员 环球微动态2023-02-28
-
当前讯息:二本a类大学排名文科_二本a类大学排名2023-02-28
-
视讯!或2024年年初上市斯柯达全新一代柯迪亚克最新谍照曝光2023-02-28
-
汉阳区人大到楚天高速开展“纳税百强企业营商环境大调研”2023-02-28
-
七月酥 当前快看2023-02-27
-
2月27日两市共有70只个股发生大宗交易 中国人保溢价10.31%_热资讯2023-02-27
-
新诺威董秘回复:阿卡波糖为一种α-葡萄糖苷酶抑制剂2023-02-27
-
当前快看:国家赔偿法涉及财产的法律有哪些2023-02-27
-
焦点快报!活性肽的生理功能_生物活性肽是什么2023-02-27
-
港股午评:恒指跌0.75% 海底捞逆市大涨13%2023-02-27
-
499欧起!小米13 Lite海外发布:用上居中药丸打孔屏_当前要闻2023-02-27
-
打击者19452023-02-27
-
快播:成本砍砍砍!马斯克的推特继续裁员2023-02-27
-
学而思作文课哪个老师讲的好_学而思作文大全2023-02-27
-
每日快看:英雄少年2023-02-27
-
微创 上海医疗科学投资有限公司-当前热门2023-02-27
-
曹方2023-02-26