本镜像运行One Identity Manager API Server实例。它在启动时从配置的数据库下载必要文件,其行为可通过密钥值和环境变量控制。
所有标记为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-latestLinux镜像免责声明
请注意,并非Identity Manager的所有功能在Linux容器中都受支持。 Identity Manager < 9.3运行在Mono上,且并非所有底层组件在Mono中都可用。
Identity Manager 9.3运行在.NET 8上,且并非所有底层组件在Linux上的.NET 8中都兼容。
注意: 在Linux上,API服务器镜像不会自动更新。当
QBMFileRevision的条目因更新或迁移而更改时,您必须启动新实例。
Web.configWeb.config文件配置API服务器的所有设置。容器会探测两个位置以查找Web.config文件:
C:\ProgramData\Docker\secrets\Web.config:如果存在此文件,将直接使用,不会用环境变量替换任何占位符。可使用以下命令创建Web.config模板:
powershell$P = $PWD.Path.Replace("\", "/") $VERSION = "latest" docker run -it --rm ` -v $P:C:/Data ` -e "CONNSTRING=Data Source=..." ` -e "UPDATEPWD=..." ` -e BASEURL=http://localhost:9999/ ` -e APPSERVERCONNSTRING=URL=http://localhost/AppServer ` oneidentity/oneim-api:$VERSION ` --createwebcfg C:\data
或者,连接字符串可来自密钥文件夹,且web.config可立即放置在那里:
powershell$P = $PWD.Path.Replace("\", "/") $VERSION = "latest" docker run -it --rm ` -v $P/secrets:C:/ProgramData/Docker/secrets ` -e BASEURL=http://localhost:9999/ ` oneidentity/oneim-api:$VERSION ` --createwebcfg C:/ProgramData/Docker/secrets
注意: 在生成web.config以及启动使用所创建web.config的容器期间,您需要指定相同的
UPDATEACCOUNT和UPDATEPWD值。
容器使用其模板,并使用密钥值或环境变量替换以下值:
| 替换模式 | 密钥值 | 环境变量 | 说明 |
|---|---|---|---|
#FACTORY# | C:\ProgramData\Docker\secrets\DBSYSTEM | DBSYSTEM | 值取决于DBSYSTEM值,但包含具体的数据库工厂类 |
#CONNSTR# | C:\ProgramData\Docker\secrets\CONNSTRING | CONNSTRING | |
%HDB_NAME_1% | C:\ProgramData\Docker\secrets\HDBNAME1 | HDBNAME1 | |
%HDB_CONNECTION_1% | C:\ProgramData\Docker\secrets\HDBCONN1 | HDBCONN1 | |
%HDB_NAME_2% | C:\ProgramData\Docker\secrets\HDBNAME2 | HDBNAME2 | |
%HDB_CONNECTION_2% | C:\ProgramData\Docker\secrets\HDBCONN2 | HDBCONN2 | |
%HDB_NAME_3% | C:\ProgramData\Docker\secrets\HDBNAME3 | HDBNAME3 | |
%HDB_CONNECTION_3% | C:\ProgramData\Docker\secrets\HDBCONN3 | HDBCONN3 | |
#TARGETS# | TARGETS | ||
#BASEURL# | C:\ProgramData\Docker\secrets\BASEURL | BASEURL | |
#ROOTDIR# | SRV_HOME | ||
#APPSERVERCONNSTRING# | C:\ProgramData\Docker\secrets\APPSERVERCONNSTRING | APPSERVERCONNSTRING | |
#UPDATEUSER# | C:\ProgramData\Docker\secrets\UPDATEUSER | UPDATEUSER | |
#APPLICATIONTOKEN# | C:\ProgramData\Docker\secrets\APPLICATIONTOKEN | APPLICATIONTOKEN | |
#FORCEAPPTOKEN# | FORCEAPPTOKEN | ||
#APPINSIGHTS_KEY# | C:\ProgramData\Docker\secrets\APPINSIGHTS_KEY | APPINSIGHTS_KEY | |
#APPINSIGHTS_LOGLEVEL# | C:\ProgramData\Docker\secrets\APPINSIGHTS_LOGLEVEL | APPINSIGHTS_LOGLEVEL | |
#LOG_TENANT# | C:\ProgramData\Docker\secrets\LOG_TENANT | LOG_TENANT | |
#FILE_LOGLEVEL# | C:\ProgramData\Docker\secrets\FILE_LOGLEVEL | FILE_LOGLEVEL | |
#TRUSTEDSOURCEKEY# | C:\ProgramData\Docker\secrets\TRUSTEDSOURCEKEY | TRUSTEDSOURCEKEY | |
#REGISTRATIONUSER# | C:\ProgramData\Docker\secrets\REGISTRATIONUSER | REGISTRATIONUSER | |
#ONELOGINAPI# | C:\ProgramData\Docker\secrets\ONELOGINAPI | ONELOGINAPI | |
#SUPPORTREADSCALEOUT# | C:\ProgramData\Docker\secrets\SUPPORTREADSCALEOUT | SUPPORTREADSCALEOUT |
密钥值优先于环境变量。
/run/secrets/web.config:如果存在此文件,将直接使用,不会用环境变量替换任何占位符。可使用以下命令创建web.config模板:
shVERSION=latest docker run -it --rm -v $PWD:/data -e "CONNSTRING=Data Source=..." -e BASEURL=http://localhost:9999/ -e APPSERVERCONNSTRING=URL=http://localhost/AppServer oneidentity/oneim-api:linux-amd64-$VERSION --createwebcfg /data
或者,连接字符串可来自密钥文件夹,且web.config可立即放置在那里:
shVERSION=latest docker run -it --rm -v $PWD/secrets:/run/secrets -e BASEURL=http://localhost:9999/ oneidentity/oneim-api:linux-amd64-$VERSION --createwebcfg /run/secrets
容器使用其模板,并使用密钥值或环境变量替换以下值:
| 替换模式 | 密钥值 | 环境变量 | 说明 |
|---|---|---|---|
#FACTORY# | /run/secrets/DBSYSTEM | DBSYSTEM | 值取决于DBSYSTEM值,但包含具体的数据库工厂类 |
#CONNSTR# | /run/secrets/CONNSTRING | CONNSTRING | |
%HDB_NAME_1% | /run/secrets/HDBNAME1 | HDBNAME1 | |
%HDB_CONNECTION_1% | /run/secrets/HDBCONN1 | HDBCONN1 | |
%HDB_NAME_2% | /run/secrets/HDBNAME2 | HDBNAME2 | |
%HDB_CONNECTION_2% | /run/secrets/HDBCONN2 | HDBCONN2 | |
%HDB_NAME_3% | /run/secrets/HDBNAME3 | HDBNAME3 | |
%HDB_CONNECTION_3% | /run/secrets/HDBCONN3 | HDBCONN3 | |
#TARGETS# | TARGETS | ||
#BASEURL# | /run/secrets/BASEURL | BASEURL | |
#ROOTDIR# | SRV_HOME | ||
#APPSERVERCONNSTRING# | /run/secrets/APPSERVERCONNSTRING | APPSERVERCONNSTRING | |
#UPDATEUSER# | /run/secrets/UPDATEUSER | UPDATEUSER | |
#APPLICATIONTOKEN# | /run/secrets/APPLICATIONTOKEN | APPLICATIONTOKEN | |
#FORCEAPPTOKEN# | FORCEAPPTOKEN | ||
#APPINSIGHTS_KEY# | /run/secrets/APPINSIGHTS_KEY | APPINSIGHTS_KEY | |
#APPINSIGHTS_LOGLEVEL# | /run/secrets/APPINSIGHTS_LOGLEVEL | APPINSIGHTS_LOGLEVEL | |
#LOG_TENANT# | /run/secrets/LOG_TENANT | LOG_TENANT | |
#CONSOLE_LOGLEVEL# | /run/secrets/CONSOLE_LOGLEVEL | CONSOLE_LOGLEVEL | |
#TRUSTEDSOURCEKEY# | /run/secrets/TRUSTEDSOURCEKEY | TRUSTEDSOURCEKEY | |
#REGISTRATIONUSER# | /run/secrets/REGISTRATIONUSER | REGISTRATIONUSER | |
#ONELOGINAPI# | /run/secrets/ONELOGINAPI | ONELOGINAPI | |
#SUPPORTREADSCALEOUT# | /run/secrets/SUPPORTREADSCALEOUT | SUPPORTREADSCALEOUT |
密钥值优先于环境变量。
用于加密会话信息的证书将在以下位置查找:
C:\ProgramData\Docker\secrets\SessionCertificate.pfx/run/secrets/SessionCertificate.pfx以下文件夹:
C:\ProgramData\Docker\secrets\/run/secrets可挂载为卷,其中可放置同名的现有证书;如果文件夹可写,服务将尝试在该位置创建新证书。
会话证书需要在API服务器实例之间共享,以便在API服务器更新后或在API服务器集群中重新打开会话。
可通过以下命令创建会话证书:
powershell$P = $PWD.Path.Replace("\", "/") $VERSION = "latest' docker run -it --rm -v $P/secrets:C:/Data oneidentity/oneim-api:$VERSION --createcert C:\Data
或使用PowerShell:
powershell$outfile = "Path\to\SessionCertificate.pfx" $date = (Get-Date).Date.AddDays(1000) $cert = New-SelfSignedCertificate ` -KeyAlgorithm RSA ` -KeyLength 2048 ` -HashAlgorithm SHA1 ` -KeyExportPolicy Exportable ` -NotAfter $date ` -Subject "CN=API Server" ` -Type DocumentEncryptionCert [System.IO.File]::WriteAllBytes( ` $outfile, ` $cert.Export( ` [System.Security.***graphy.X509Certificates.X509ContentType]::Pkcs12, ` $null))
可通过以下命令创建会话证书:
shVERSION=latest docker run -it --rm -v $PWD:/data oneidentity/oneim-api:linux-amd64-$VERSION --createcert /data
或使用OpenSSL:
shopenssl genrsa 2048 > private.pem openssl req -x509 -sha1 -days 1000 -new -subj "/CN=API Server" -key private.pem -out public.pem openssl pkcs12 -export -in public.pem -inkey private.pem -password pass: -out config/SessionCertificate.pfx
DBSYSTEM要在安装和运行时连接的数据库或应用服务器系统。有效值为:
MSSQL:Microsoft SQL ServerAPPSERVER:通过应用服务器连接如果未提供DBSYSTEM值,默认使用MSSQL。
可在密钥文件夹中提供。
CONNSTRING用于连接系统的连接字符串。此参数为必填项。内容取决于所用的数据库系统。
不同系统的连接字符串示例:
MSSQL:
connectionstringData Source=[Server];Initial Catalog=[DB];User ID=[User];Password=[Password]
APPSERVER:
connectionstringUrl=[***]
可在密钥文件夹中提供。
APPSERVERCONNSTRING如果主连接使用直接Microsoft SQL Server连接,则为附加的应用服务器连接字符串。当DBSYSTEM等于MSSQL时,此参数为必填项。
connectionstringUrl=[***]
可在密钥文件夹中提供。
TARGETS要安装的部署目标的逗号分隔列表。默认目标为:Server\Web\BusinessAPIServer。
UPDATEUSER用于自动更新处理和在启动期间创建QBMWebApplication条目的用户的身份验证字符串。
可在密钥文件夹中提供。
BASEURL用于创建(如不存在)和使用QBMWebApplication条目的标识符。
可
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429