在鲲鹏云服务器制作keycloak docker镜像
【摘要】 keycloak是一个开源软件产品,旨在为现代的应用程序和服务,提供包含身份管理和访问管理功能的单点登录工具。目前dockerhub上官方未提供arm版的jboss/keycloak镜像,本指导文档主要介绍以Dockerfile方式构建jboss/keycloak-arm镜像。
keycloak是一个开源软件产品,旨在为现代的应用程序和服务,提供包含身份管理和访问管理功能的单点登录工具。目前dockerhub上官方未提供arm版的jboss/keycloak镜像,本指导文档主要介绍以Dockerfile方式构建jboss/keycloak-arm镜像。
环境要求
硬件要求
本文以KC1实例测试,配置如表 云服务器配置所示
项目 |
说明 |
规格 |
kc1.large.2 | 4vCPUs | 8GB |
磁盘 |
系统盘:高IO(40GB) |
操作系统要求
操作系统要求如表 操作系统要求所示。
项目 |
说明 |
下载地址 |
CentOS |
7.6 |
在公共镜像中已提供。 |
Kernel |
4.14.0-115 |
在公共镜像中已提供。 |
Kernel |
4.14.0-115 |
在公共镜像中已提供。 |
配置编译环境
安装依赖的基础组件和docker
yum install -y yum-utils device-mapper-persistent-data lvm2 git
yum -y install docker
启动docker并设置docker开机自启
systemctl start docker
systemctl enable docker
获取源码
获取“keycloak最新Dockerfile脚本”源码包。
cd /usr/local/src
git clone https://github.com/keycloak/keycloak-containers.git
编译和安装
编辑Dockerfile文件,将第一行基础镜像修改成“From registry.fedoraproject.org/fedora-minimal:30”
cd keycloak-containers/server/
vim Dockerfile
From registry.fedoraproject.org/fedora-minimal:30
执行docker构建命令
docker build -t jboss/keycloak-arm:8.0.0 .
构建过程中会出现警告信息,可直接忽略警告信息。
运行和验证
查看docker镜像
docker images
回显类似如下信息
REPOSITORY TAG IMAGE ID CREATED SIZE
jboss/keycloak-arm 8.0.0 4f82csadf2615 1 minutes ago 787MB
registry.fedoraproject.org/fedora-minimal 30 156adfe65aea5 2 months ago 164MB
启动jboss/keycloak容器
docker run -d -p 8080:8080 -e KEYCLOAK_USER=root -e KEYCLOAK_PASSWORD=root jboss/keycloak-arm:8.0.0
启动后执行docker ps 查看容器启动状况如下
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
561ae5t64a5 jboss/keycloak-arm:8.0.0 "/opt/jboss/tools/..." 10 seconds ago Up 8 seconds 8080/tcp,8443/tcp suspici...
使用浏览器访问 http://<ecs的ip>:8080 ,会出现如下页面
============================================================================================
keycloak5.0.0镜像制作方法如下。
下载源码包解压
更改keycloak-contariners/server/Dockerfile文件如下。
FROM arm64v8/centos:7
RUN yum update -y && yum -y install xmlstarlet saxon augeas bsdtar unzip && yum clean all
RUN groupadd -r jboss -g 1000 && useradd -u 1000 -r -g jboss -m -d /opt/jboss -s /sbin/nologin -c "JBoss user" jboss && \
chmod 755 /opt/jboss
USER root
RUN yum -y install java-1.8.0-openjdk-devel && yum clean all
ENV JAVA_HOME /usr/lib/jvm/java
ENV KEYCLOAK_VERSION 5.0.0
ENV JDBC_POSTGRES_VERSION 42.2.2
ENV JDBC_MYSQL_VERSION 5.1.46
ENV JDBC_MARIADB_VERSION 2.2.3
ENV LAUNCH_JBOSS_IN_BACKGROUND 1
ENV PROXY_ADDRESS_FORWARDING false
ENV JBOSS_HOME /opt/jboss/keycloak
ENV LANG en_US.UTF-8
ARG GIT_REPO
ARG GIT_BRANCH
ARG KEYCLOAK_DIST=https://downloads.jboss.org/keycloak/$KEYCLOAK_VERSION/keycloak-$KEYCLOAK_VERSION.tar.gz
USER root
RUN yum upgrade -y && yum install -y epel-release git && yum install -y jq openssl which && yum clean all
ADD tools /opt/jboss/tools
RUN /opt/jboss/tools/build-keycloak.sh
USER 1000
EXPOSE 8080
ENTRYPOINT [ "/opt/jboss/tools/docker-entrypoint.sh" ]
CMD ["-b", "0.0.0.0"]
更改keycloak-contariners/server/tool/build-keycloak.sh文件中关于maven的地址如下图
其他步骤和8.0.0版本一致。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)