该镜像运行One Identity Manager应用服务器实例,启动时从配置的数据库下载必要文件,其行为可通过密钥值和环境变量控制。
所有标记为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上,应用服务器镜像不会自动更新。当
QBMFileRevision的条目因更新或迁移而更改时,您必须启动新实例。
appsettings.jsonappsettings.json文件配置应用服务器的所有设置。容器会探测两个位置以查找appsettings.json文件:
C:\ProgramData\Docker\secrets\appsettings.json:如果存在此文件,将直接使用,不使用环境变量替换任何占位符。可使用以下命令创建appsettings.json模板:
powershell$P = $PWD.Path.Replace("\", "/") $VERSION = "latest" docker run -it --rm ` -v $P/secrets:C:/Data ` -e "CONNSTRING=Data Source=..." ` -e "UPDATEPWD=..." ` oneidentity/oneim-appserver:$VERSION ` --createwebcfg C:\data
注意: 在生成web.config和启动使用所创建web.config的容器时,需要指定相同的
UPDATEACCOUNT和UPDATEPWD值。
容器使用其模板,并使用密钥值或环境变量替换以下值:
| 替换模式 | 密钥值路径 | 环境变量 |
|---|---|---|
%DB_PROVIDER% | C:\ProgramData\Docker\secrets\DBSYSTEM | DBSYSTEM |
%DB_CONNECTION% | 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 |
#BASEURL# | C:\ProgramData\Docker\secrets\BASEURL | BASEURL |
#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 |
#SUPPORTREADSCALEOUT# | C:\ProgramData\Docker\secrets\SUPPORTREADSCALEOUT | SUPPORTREADSCALEOUT |
#DISABLE_LOGVIEWER# | C:\ProgramData\Docker\secrets\ENABLE_LOGVIEWER | ENABLE_LOGVIEWER |
#DISABLE_RESTAPI# | C:\ProgramData\Docker\secrets\ENABLE_RESTAPI | ENABLE_RESTAPI |
#DISABLE_APPSERVERAPI# | C:\ProgramData\Docker\secrets\ENABLE_APPSERVERAPI | ENABLE_APPSERVERAPI |
#DISABLE_METADATA# | C:\ProgramData\Docker\secrets\ENABLE_METADATA | ENABLE_METADATA |
#DISABLE_SYNC# | C:\ProgramData\Docker\secrets\ENABLE_SYNC | ENABLE_SYNC |
密钥值优先于环境变量。
/run/secrets/Web.config:如果存在此文件,将直接使用,不使用环境变量替换任何占位符。可使用以下命令创建Web.config模板:
shVERSION=latest docker run -it --rm -v $PWD:/data -e "CONNSTRING=Data Source=..." oneidentity/oneim-appserver:linux-amd64-$VERSION --createwebcfg /data
容器使用其模板,并使用密钥值或环境变量替换以下值:
| 替换模式 | 密钥值路径 | 环境变量 |
|---|---|---|
%DB_PROVIDER% | /run/secrets/DBSYSTEM | DBSYSTEM |
%DB_CONNECTION% | /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 |
#BASEURL# | /run/secrets/BASEURL | BASEURL |
#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 |
#FILE_LOGLEVEL# | /run/secrets/FILE_LOGLEVEL | FILE_LOGLEVEL |
#SUPPORTREADSCALEOUT# | /run/secrets/SUPPORTREADSCALEOUT | SUPPORTREADSCALEOUT |
#DISABLE_LOGVIEWER# | /run/secrets/ENABLE_LOGVIEWER | ENABLE_LOGVIEWER |
#DISABLE_RESTAPI# | /run/secrets/ENABLE_RESTAPI | ENABLE_RESTAPI |
#DISABLE_APPSERVERAPI# | /run/secrets/ENABLE_APPSERVERAPI | ENABLE_APPSERVERAPI |
#DISABLE_METADATA# | /run/secrets/ENABLE_METADATA | ENABLE_METADATA |
#DISABLE_SYNC# | /run/secrets/ENABLE_SYNC | ENABLE_SYNC |
密钥值优先于环境变量。
用于加密会话信息的证书将在以下位置查找:
C:\ProgramData\Docker\secrets\SessionCertificate.pfx/run/secrets/SessionCertificate.pfx以下文件夹:
C:\ProgramData\Docker\secrets\/run/secrets可以挂载为卷,其中可找到名为该证书的现有证书,或者如果文件夹可写,服务将尝试在该位置创建新证书。
会话证书需要在应用服务器实例之间共享,以便在应用服务器更新后或在应用服务器集群中可以重新打开会话。
可通过以下命令创建会话证书:
powershell$P = $PWD.Path.Replace("\", "/") $VERSION = "latest" docker run -it --rm -v $P/secrets:C:/Data oneidentity/oneim-appserver:$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=Application 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-appserver:linux-amd64-$VERSION --createcert /data
或使用OpenSSL:
shopenssl genrsa 2048 > private.pem openssl req -x509 -sha1 -days 1000 -new -subj "/CN=Application 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 Server如果未提供DBSYSTEM值,默认使用MSSQL。
此值也可通过密钥文件夹中的文件提供。
CONNSTRING用于连接系统的连接字符串。此参数为必填项。
连接字符串示例(MSSQL):
connectionstringData Source=[服务器];Initial Catalog=[数据库];User ID=[用户];Password=[密码]
此值也可通过密钥文件夹中的文件提供。
TARGETS要安装的部署目标的逗号分隔列表。默认目标包括应用服务器和搜索索引目标:Server\Web\AppServer,Server\Web\AppServer\SearchCrawler,Server\Web\AppServer\SearchIndex。
如果不需要搜索索引,可将此变量更改为Server\Web\AppServer。
BASEURL服务器可从外部访问的基本URL。当API测试前端需要正常工作时需设置。
此值也可通过密钥文件夹中的文件提供。
UPDATEACCOUNT注意: 仅限Windows。此环境变量仅在Windows容器中可用。
设置用于更新的特定账户名。更新账户的默认名称为Update。
此值也可通过密钥文件夹中的文件提供。
UPDATEPWD注意: 仅限Windows。此环境变量仅在Windows容器中可用。
UPDATEACCOUNT中指定的更新账户的密码。如果未设置密码,将为容器运行生成随机密码。
此值也可通过密钥文件夹中的文件提供。
HDBNAMEx要放入Web.config的历史数据库连接名称。x可以是1到3之间的任何值。需要HDBCONNx值。
此值也可通过密钥文件夹中的文件提供。
HDBCONNx要放入Web.config的历史数据库连接字符串。x可以是1到3之间的任何值。
此值也可通过密钥文件夹中的文件提供。
SUPPORTREADSCALEOUT如果应用应使用Azure托管实例的读取扩展处理,设置为true。
APPINSIGHTS_KEY用于记录到AppInsights的密钥。如果未设置,则不记录到AppInsights。
此值也可通过密钥文件夹中的文件提供。
APPINSIGHTS_LOGLEVEL用于记录到AppInsights的日志级别。默认:Info
此值也可通过密钥文件夹中的文件提供。
LOG_TENANT要与发送到AppInsights的每条日志消息关联的租户ID。
此值也可通过密钥文件夹中的文件提供。
CONSOLE_LOGLEVEL用于记录到控制台的日志级别。仅限Linux。默认:Info。
此值也可通过密钥文件夹中的文件提供。
FILE_LOGLEVEL用于记录到日志文件的日志级别。默认:Info
此值也可通过密钥文件夹中的文件提供。
ENABLE_LOGVIEWER在状态前端启用日志查看器。有效值:true和false。默认:true。
ENABLE_RESTAPI启用REST API。有效值:true和false。默认:true。
ENABLE_APPSERVERAPI启用允许Identity Manager前端和工具进行API访问的AppServer API。有效值:true和false。默认:true。
ENABLE_METADATA启用同步所需的元数据API。有效值:true和false。默认:false。
ENABLE_SYNC启用同步所需的同步API。有效值:true和false。默认:false。
DEBUG设置为true可从启动脚本获取详细输出。
Windows和Linux镜像的卷挂载点不同。请根据所用镜像类型指定卷挂载点。
secrets(来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 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