oneidentity/oneim-job本镜像运行One Identity Manager Service实例,启动时会下载特定作业服务器的必要文件。其行为可通过密钥值和环境变量进行控制,适用于部署和运行One Identity Manager的作业服务。
适用于需要部署One Identity Manager作业服务的环境,支持Windows Server 2016/2019/2022(amd64架构)和Linux(amd64架构)系统。注意:Linux镜像存在部分功能限制,如报表生成、本地目标同步可能失败。
windows-amd64的镜像兼容Windows Server主机,请根据以下标签列表确认各标签支持的Windows Server版本linux-amd64的镜像兼容Linux操作系统主机latest, 9.3, 9.2, 9.1, 9.0, 8.2, windows-amd64-9.2-windowsservercore-ltsc2022, windows-amd64-9.1-windowsservercore-ltsc2022, windows-amd64-9.0-windowsservercore-ltsc2022, windows-amd64-8.2-windowsservercore-ltsc2022, windows-amd64-latest-windowsservercore-ltsc2022latest, 9.3, 9.2, 9.1, 9.0, 8.2, windows-amd64-9.2-windowsservercore-ltsc2019, windows-amd64-9.1-windowsservercore-ltsc2019, windows-amd64-9.0-windowsservercore-ltsc2019, windows-amd64-8.2-windowsservercore-ltsc2019, windows-amd64-latest-windowsservercore-ltsc20199.2, 9.1, 9.0, 8.2, windows-amd64-9.2-windowsservercore-ltsc2016, windows-amd64-9.1-windowsservercore-ltsc2016, windows-amd64-9.0-windowsservercore-ltsc2016, windows-amd64-8.2-windowsservercore-ltsc2016latest, 9.3, 9.2, 9.1, 9.0, 8.2, linux-amd64-9.2, linux-amd64-9.1, linux-amd64-9.0, linux-amd64-8.2, linux-amd64-latest请注意,并非Identity Manager的所有功能在Linux容器中都受支持:
Identity Manager < 9.3运行在Mono上,并非所有底层组件在Mono中都可用。例如,报表生成和本地目标同步在Linux容器中可能失败。
Identity Manager 9.3运行在.NET 8上,并非所有底层组件在Linux上的.NET 8中都兼容。例如,本地目标同步在Linux容器中可能失败。
DBSYSTEM安装和运行时连接的数据库或应用服务器系统。有效值:
MSSQL:Microsoft SQL ServerAPPSERVER:通过应用服务器连接若未提供DBSYSTEM值,默认使用MSSQL。
此值也可通过密钥文件夹中的文件提供。
CONNSTRING用于连接系统的连接字符串,为必填参数。内容取决于所用数据库系统。
不同系统的连接字符串示例:
MSSQL:
connectionstringData Source=[服务器];Initial Catalog=[数据库];User ID=[用户名];Password=[密码]
APPSERVER:
connectionstringUrl=[***]
此值也可通过密钥文件夹中的文件提供。
RUNDBAGENT是否在此作业服务器中运行数据库代理。仅当DBSYSTEM = MSSQL时有效。值可为空、true或false。
AUTHSTRING当连接应用服务器时(DBSYSTEM = APPSERVER)为必填参数,用于用户认证。可使用任何有效的One Identity Manager认证字符串。
示例:
connectionstringModule=DialogUser;User=[用户名];Password=[密码]
此值也可通过密钥文件夹中的文件提供。
SERVERNAME必填参数,用于在连接的系统中查找匹配的QBMServer条目,定义启动服务的行为(包括使用的部署目标和处理的队列)。
此值也可通过密钥文件夹中的文件提供。
QUEUE设置队列名称(若与服务器名不同)。默认值为\\${SERVERNAME}。
CONFIGFROMDB默认情况下,容器会基于提供的值生成作业服务器配置。若要覆盖此行为,可设置CONFIGFROMDB环境变量,此时作业服务器配置将从数据库加载。
注意:启用此选项后,您需完全负责配置连接字符串、私钥路径、日志等。确保数据库中存在作业服务器配置(例如,使用Designer中的Job Server Editor设置并保存配置)。
配置中可使用以下占位符,启动时会被替换:#CONNSTRING#、#AUTHSTRING#、#DEBUGMODE#、#HTTP_USER#、#HTTP_PWD#、#REQUESTINTERVAL#、#SECRETS#。
HTTP_USER状态Web前端的认证用户名。若未提供,容器会生成随机用户名并在启动日志中显示。
此值也可通过密钥文件夹中的文件提供。
HTTP_PWD状态Web前端的认证密码。若未提供,容器会生成随机密码并在启动日志中显示。
此值也可通过密钥文件夹中的文件提供。
DEBUGMODE设置为True以启用服务调试模式。
REQUESTINTERVAL作业请求间隔(秒)。默认值为90秒。
EXTERNALSLOTS进程外运行作业的槽数量。默认值:10。
EXTERNALSLOTS32在32位进程中外运行作业的槽数量。默认值:4。
INTERNALSLOTS进程内运行作业的槽数量。默认值:20。
REQUESTQUEUELIMIT等待数据库处理的最大进程请求数。默认值:1000。
RESULTQUEUELIMIT等待数据库处理的最大进程结果数。默认值:***。
FLUSHTIMEOUTSECONDS服务关闭前允许写回待处理结果的秒数。默认值:10。
SUPPORTREADSCALEOUT若服务应使用Azure托管实例的读取扩展处理,设置为true。
APPINSIGHTS_KEY用于AppInsights日志记录的密钥。若未设置,则不向AppInsights记录日志。
APPINSIGHTS_LOGLEVELAppInsights日志级别。默认值:Info。
LOG_TENANT与发送到AppInsights的每条日志消息关联的租户ID。
CONSOLE_LOGLEVEL控制台日志级别。默认值:Info。
FILE_LOGLEVEL日志文件的原始日志级别。默认值:Off。
SESSIONAUTH使用Identity Manager认证模块对JobService Web前端的用户进行认证。设置为true以启用基于会话的认证。
BASEURL设置用于查找正确Web应用配置的基本URL。当用户需通过OAuth2或OpenID Connect认证时需要。仅对SESSIONAUTH启用的基于会话的认证有效。
ALLOW_SECRETS_FOR_REPLACEMENT允许在作业参数中替换的密钥名称的逗号分隔列表。
REMOTECONNECT_SECRET若设置此值,同步引擎的远程连接插件将被安装并使用此密钥作为认证方法初始化。
Windows和Linux镜像的卷挂载点不同,请根据使用的镜像类型指定卷挂载点。
secretsC:/ProgramData/Docker/secrets/run/secretssecrets目录应包含用于解密系统中加密存储值的private.key文件。
还可包含以下设置的文件(文件内容为值):DBSYSTEM、CONNSTRING、AUTHSTRING、SERVERNAME、HTTP_USER、HTTP_PWD。
此挂载点应设置为只读。
ca-certificatesC:/ca-certificates/run/ca-certificates放置应信任的自定义证书。启动容器时,所有扩展名为.crt的证书将导入到容器(或mono)的本地计算机受信任根证书存储。
也可在此目录放置名为ca-certificates.zip的归档文件,启动时会被解压,其中所有.crt文件将导入存储。
当应用程序需要通过HTTPS调用使用私有PKI签名证书的服务器(如强制HTTPS的AppServer)时,可能需要此配置。
可通过修改CA_CERTIFICATE环境变量控制查找路径。
此挂载点应设置为只读。
注意:Linux系统要求证书为base64 PEM格式,不支持二进制DER格式。
logsC:/Logs/var/log/jobservice若要持久化服务日志,应将此目录挂载为卷。这些日志文件会显示在服务的Web界面中。
此外,服务会记录到标准输出,可通过docker logs命令查看或由容器运行时聚合。
resultsroot/.oneim/AppData/JobService应将此目录挂载为卷,以允许服务在运行之间持久化待处理结果(容器停止时未向作业队列发送的结果)。
注意:由于官方Windows Server版本(2016 LTSC和1709)存在问题,不支持Job Service容器的优雅关闭,因此待处理结果不会持久化。从Windows Server 1803版本开始,支持运行Job Service的Windows容器优雅关闭。
HTTP_USER和HTTP_PWD环境变量提供的账户和密码保护。REMOTECONNECT_SECRET环境变量时启用。针对Microsoft SQL Server数据库,运行标识符为DockerServer1的QBMServer条目的作业服务器:
powershelldocker run -it --rm ` -p 1880:1880 ` -p 2880:2880 ` -e "CONNSTRING=Data Source=[服务器];Initial Catalog=[数据库];User ID=[用户名];Password=[密码]" ` -e "SERVERNAME=DockerServer1" ` -e "HTTP_USER=admin" ` -e "HTTP_PWD=fg(&R8f&Rf" ` -v C:/Path/To/secrets:C:/ProgramData/Docker/secrets:ro ` -v C:/Path/To/logs:C:/logs ` oneidentity/oneim-job:latest
在后台运行容器,并从密钥文件夹中的条目获取参数:
powershelldocker run -d ` -p 1880:1880 ` -p 2880:2880 ` -v C:/Path/To/secrets:C:/ProgramData/Docker/secrets:ro ` -v C:/Path/To/logs:C:/logs ` oneidentity/oneim-job:latest
密钥文件夹结构如下:
secrets ├── CONNSTRING ├── HTTP_PWD ├── HTTP_USER ├── private.key └── SERVERNAME
针对应用服务器,运行标识符为Docker42的QBMServer条目的服务:
powershelldocker run -it --rm ` -p 1880:1880 ` -p 2880:2880 ` -e "DBSYSTEM=APPSERVER" ` -e "CONNSTRING=Url=[***]" ` -e "AUTHSTRING=Module=DialogUser;User=[用户名];Password=[密码]" ` -e "SERVERNAME=Docker42" ` -e "HTTP_USER=admin" ` -e "HTTP_PWD=fg(&R8f&Rf" ` -v C:/Path/To/secrets:C:/ProgramData/Docker/secrets:ro ` -v C:/Path/To/logs:C:/logs ` oneidentity/oneim-job:latest
针对Microsoft SQL Server数据库,运行标识符为DockerServer1的QBMServer条目的服务:
shdocker run -it --rm \ -p 1880:1880 \ -e "CONNSTRING=Data Source=[服务器];Initial Catalog=[数据库];User ID=[用户名];Password=[密码]" \ -e "SERVERNAME=DockerServer1" \ -e "HTTP_USER=admin" \ -e "HTTP_PWD=fg(&R8f&Rf" \ -v $PWD/secrets:/run/secrets:ro \ -v $PWD/logs:/var/log/jobservice \ oneidentity/oneim-job:latest
在后台运行容器,并从密钥文件夹中的条目获取参数:
shdocker run -d \ -p 1880:1880 \ -v $PWD/secrets:/run/secrets:ro \ -v $PWD/logs:/var/log/jobservice \ oneidentity/oneim-job:latest
密钥文件夹结构如下:
secrets ├── CONNSTRING ├── HTTP_PWD ├── HTTP_USER ├── private.key └── SERVERNAME
针对应用服务器,运行标识符为Docker42的QBMServer条目的服务:
shdocker run -it --rm \ -p 1880:1880 \ -e "DBSYSTEM=APPSERVER" \ -e "CONNSTRING=Url=[***]" \ -e "AUTHSTRING=Module=DialogUser;User=[用户名];Password=[密码]" \ -e "SERVERNAME=Docker42" \ -e "HTTP_USER=admin" \ -e "HTTP_PWD=fg(&R8f&Rf" \ -v $PWD/secrets:/run/secrets:ro \ -v $PWD/logs:/var/log/jobservice \ oneidentity/oneim-job:latest
One Identity Manager 产品信息
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务