
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该镜像包含使用IIS和WorkflowGen Windows服务的WorkflowGen服务器。可通过此镜像运行WorkflowGen Web应用、Windows服务或同时运行两者。
WorkflowGen应用: 仅支持Windows容器(所有版本)
生产环境数据库选项:
| WorkflowGen版本 | 生产数据库 | 容器类型 |
|---|---|---|
| v10 | PostgreSQL 17 | Windows或Linux |
| v9.3.1 | SQL Server 2022 | 仅Linux |
| v9.3.0及更早 | SQL Server 2019 | 仅Linux |
| v8 | SQL Server 2019 | 仅Linux |
开发/测试环境数据库选项:
| WorkflowGen版本 | 开发/测试数据库 | 说明 |
|---|---|---|
| 所有版本 | SQL Server Express 2017(Windows) | 10GB限制,不用于生产环境 |
| 仅v10 | SQL Server 2025(Linux预览版) | 预览软件,不用于生产环境 |
🚨 重要 - 生产环境部署
生产就绪组合:
- ✅ v10:WorkflowGen Windows容器 + https://hub.docker.com/r/advantys/workflowgen-postgres%EF%BC%88Windows%E6%88%96Linux%EF%BC%89
- ✅ v9.3.1:WorkflowGen Windows容器 + https://hub.docker.com/r/advantys/workflowgen-sql
- ✅ v9.3.0及更早:WorkflowGen Windows容器 + https://hub.docker.com/r/advantys/workflowgen-sql
- ✅ v8:WorkflowGen Windows容器 + https://hub.docker.com/r/advantys/workflowgen-sql
混合部署(WorkflowGen Windows容器 + 数据库Linux容器)完全支持生产环境。
数据库详情参见 https://hub.docker.com/r/advantys/workflowgen-sql 和 https://hub.docker.com/r/advantys/workflowgen-postgres%E3%80%82
最新Dockerfile:
示例标签:
10.0.3-win-ltsc2019 - WorkflowGen v10.0.39.3.1-win-ltsc2019 - WorkflowGen v9.3.18.3.5-win-ltsc2019 - WorkflowGen v8.3.5latest - 最新版本-onbuild 后缀 - 可自定义变体10.0.3-win-ltsc2019C:\wfgen\licenses 卷WFGEN_APP_SETTING_ApplicationSerialNumber 环境变量设置运行前,确保数据库已通过提供的SQL脚本初始化。
powershelldocker run -it --env-file .\workflowgen.env -v C:\path\to\licenses:C:\wfgen\licenses --name wfgen advantys/workflowgen:{version}-win-ltsc2019
将 {version} 替换为实际版本(如 10.0.3、9.3.1)。
前置操作:
powershell# 创建卷 docker volume create licenses docker volume create wfgdata docker volume create pgdata # 复制许可证 $licensesPath = docker volume inspect --format "{{.Mountpoint}}" licenses Copy-Item ~\Desktop\license.lic $licensesPath # 生成对称加密密钥(32字符) [guid]::NewGuid().ToString("N") # 示例:ca8e4e2b04254aeeadbcfc0724e3b62a
docker-compose.yml:
yamlservices: workflowgen: image: advantys/workflowgen:10.0.3-win-ltsc2019 depends_on: - database environment: - WFGEN_DATABASE_CONNECTION_STRING=Host=database;Port=5432;Database=wfgen;Username=wfgen_user;Password=yourStrong(!)Password; - WFGEN_DATABASE_CONNECTION_STRING_PROVIDER_NAME=Npgsql - WFGEN_APP_SETTING_ApplicationUrl=http://localhost:8888/wfgen - WFGEN_APP_SETTING_ApplicationSerialNumber=YOUR_WORKFLOWGEN_SERIAL_NUMBER - WFGEN_APP_SETTING_ApplicationSecurityPasswordSymmetricEncryptionKey=ca8e4e2b04254aeeadbcfc0724e3b62a ports: - 8888:80 volumes: - licenses:C:\wfgen\licenses:RO - wfgdata:C:\wfgen\data database: image: advantys/workflowgen-postgres:10.0.3-postgres-win-ltsc2019 container_name: database environment: - PGDATA=C:\wfgen\postgres - POSTGRES_INITDB_ARGS=--username=postgres - POSTGRES_PASSWORD=yourStrong(!)Password - WFGEN_DATABASE_USER_PASSWORD=yourStrong(!)Password - WFGEN_ADMIN_PASSWORD=yourStrong(!)Password volumes: - pgdata:C:\wfgen\postgres ports: - 5432:5432 volumes: licenses: external: true wfgdata: pgdata:
启动:
powershelldocker compose up -d
访问: http://localhost:8888/wfgen(用户名:`wfgen_admin`,密码:`yourStrong(!)Password`)
前置操作:
powershell# 创建卷 docker volume create licenses docker volume create wfgdata docker volume create sqldata # 复制许可证 $licensesPath = docker volume inspect --format "{{.Mountpoint}}" licenses Copy-Item ~\Desktop\license.lic $licensesPath # 生成对称加密密钥 [guid]::NewGuid().ToString("N") # 示例:ca8e4e2b04254aeeadbcfc0724e3b62a
docker-compose.yml:
yamlservices: workflowgen: image: advantys/workflowgen:9.3.1-win-ltsc2019 depends_on: - database environment: - WFGEN_DATABASE_CONNECTION_STRING=Data Source=database;Network Library=DBMSSOCN;Initial Catalog=WFGEN;User ID=WFGEN_USER;Password=yourStrong(!)Password; - WFGEN_APP_SETTING_ApplicationUrl=http://localhost:8888/wfgen - WFGEN_APP_SETTING_ApplicationSerialNumber=YOUR_WORKFLOWGEN_SERIAL_NUMBER - WFGEN_APP_SETTING_ApplicationSecurityPasswordSymmetricEncryptionKey=ca8e4e2b04254aeeadbcfc0724e3b62a ports: - 8888:80 volumes: - licenses:C:\wfgen\licenses:RO - wfgdata:C:\wfgen\data database: image: advantys/workflowgen-sql:9.3.1-express-win-ltsc2019 container_name: database environment: - ACCEPT_EULA=Y - SA_PASSWORD=yourStrong(!)Password - WFGEN_DATABASE_USER_PASSWORD=yourStrong(!)Password - WFGEN_ADMIN_PASSWORD=yourStrong(!)Password volumes: - sqldata:C:\wfgen\sql ports: - 1433:1433 volumes: licenses: external: true wfgdata: sqldata:
启动:
powershelldocker compose up -d
访问: http://localhost:8888/wfgen(用户名:`wfgen_admin`,密码:`yourStrong(!)Password`)
docker-compose.yml:
yamlservices: database: image: advantys/workflowgen-postgres:10.0.3-postgres-debian-bookworm container_name: database environment: - PGDATA=/var/lib/postgresql/data - POSTGRES_INITDB_ARGS=--username=postgres - POSTGRES_PASSWORD=yourStrong(!)Password - WFGEN_DATABASE_USER_PASSWORD=yourStrong(!)Password - WFGEN_ADMIN_PASSWORD=yourStrong(!)Password volumes: - pgdata:/var/lib/postgresql/data ports: - 5432:5432 volumes: pgdata:
WorkflowGen连接字符串:
iniWFGEN_DATABASE_CONNECTION_STRING=Host=database;Port=5432;Database=wfgen;Username=wfgen_user;Password=yourStrong(!)Password; WFGEN_DATABASE_CONNECTION_STRING_PROVIDER_NAME=Npgsql
⚠️ 不用于生产 - SQL Server 2025为预览版。生产环境请使用PostgreSQL。
docker-compose.yml:
yamlservices: database: image: advantys/workflowgen-sql:10.0.3-ubuntu-24.04 container_name: database environment: - ACCEPT_EULA=Y - SA_PASSWORD=yourStrong(!)Password - WFGEN_DATABASE_USER_PASSWORD=yourStrong(!)Password - WFGEN_ADMIN_PASSWORD=yourStrong(!)Password volumes: - sqldata:/var/opt/mssql ports: - 1433:1433 volumes: sqldata:
WorkflowGen连接字符串:
iniWFGEN_DATABASE_CONNECTION_STRING=Data Source=database;Initial Catalog=WFGEN;User ID=WFGEN_USER;Password=yourStrong(!)Password;TrustServerCertificate=True
v10:PostgreSQL(生产推荐)
iniWFGEN_DATABASE_CONNECTION_STRING=Host=database;Port=5432;Database=wfgen;Username=wfgen_user;Password=<password>; WFGEN_DATABASE_CONNECTION_STRING_PROVIDER_NAME=Npgsql
v10:SQL Server 2025(仅开发/测试)
iniWFGEN_DATABASE_CONNECTION_STRING=Data Source=database;Initial Catalog=WFGEN;User ID=WFGEN_USER;Password=<password>;TrustServerCertificate=True
注意:SQL Server提供程序默认为
System.Data.SqlClient,无需额外指定。
v9、v8:SQL Server
iniWFGEN_DATABASE_CONNECTION_STRING=Data Source=database;Network Library=DBMSSOCN;Initial Catalog=WFGEN;User ID=WFGEN_USER;Password=<password>;
注意:
Network Library=DBMSSOCN强制使用TCP/IP协议(容器必需)- 生产环境:使用Linux SQL Server容器(v9.3.1对应SQL Server 2022,v8/v9.3.0及更早对应SQL Server 2019)
- 开发/测试:使用Windows SQL Server Express 2017容器
通过环境变量配置web.config设置:WFGEN_APP_SETTING_<name>
示例:
iniWFGEN_APP_SETTING_ApplicationUrl=https://example.com/wfgen
配置IISNode:WFGEN_IISNODE_<app name>_<setting name>
示例:
iniWFGEN_IISNODE_AUTH_loggingEnabled=true
WFGEN_ENABLE_IISNODE_OPTION_<app name> - exposelogs值可通过HTTP暴露日志(仅调试用)
添加自定义连接字符串:WFGEN_CUSTOM_CONNECTION_STRING_<name>=<connection_string>
默认提供程序为System.Data.SqlClient。
指定自定义提供程序:
iniWFGEN_CUSTOM_CONNECTION_STRING_<name>_PROVIDER_NAME=<provider_name>
示例(PostgreSQL):
iniWFGEN_CUSTOM_CONNECTION_STRING_MyCustomDB=Host=myserver;Port=5432;Database=mydb;Username=user;Password=pass; WFGEN_CUSTOM_CONNECTION_STRING_MyCustomDB_PROVIDER_NAME=Npgsql
Docker Secrets和Kubernetes Secrets支持:任何环境变量可添加_FILE后缀,其值为包含实际值的文件路径。
注意:带与不带
_FILE后缀的变量互斥。
Docker Swarm示例:
powershell# 创建密钥 docker secret create ApplicationSecurityPasswordSymmetricEncryptionKey "84c953d4eac14da2ba93c010e85c76e0" docker secret create WFGEN_DATABASE_CONNECTION_STRING "Host=database;Port=5432;Database=wfgen;Username=wfgen_user;Password=secretPassword;" docker secret create ApplicationSerialNumber "YOUR_SERIAL_NUMBER" # 创建WorkflowGen服务(v10搭配PostgreSQL) docker service create ` --env WFGEN_APP_SETTING_ApplicationSecurityPasswordSymmetricEncryptionKey_FILE=C:\ProgramData\Docker\secrets\ApplicationSecurityPasswordSymmetricEncryptionKey ` --env WFGEN_DATABASE_CONNECTION_STRING_FILE=C:\ProgramData\Docker\secrets\WFGEN_DATABASE_CONNECTION_STRING ` --env WFGEN_DATABASE_CONNECTION_STRING_PROVIDER_NAME=Npgsql ` --env WFGEN_APP_SETTING_ApplicationSerialNumber_FILE=C:\ProgramData\Docker\secrets\ApplicationSerialNumber ` --secret ApplicationSecurityPasswordSymmetricEncryptionKey ` --secret WFGEN_DATABASE_CONNECTION_STRING ` --secret ApplicationSerialNumber ` --mount "type=volume,src=licenses,dst=C:\wfgen\licenses,readonly" ` advantys/workflowgen:10.0.3-win-ltsc2019
| 名称 | 描述 |
|---|---|
WFGEN_ADMIN_USERNAME | WorkflowGen管理员用户名。配置OpenID提供程序时使用,需与提供程序中存在的用户名匹配以获取管理员权限。注意:修改后需同步更新数据库。默认:wfgen_admin |
WFGEN_DATABASE_CONNECTION_STRING | 必需。主数据库连接字符串。未设置时容器将报错 |
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务