
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
运行您自己的符合HIPAA和GDPR标准的https://github.com/parse-community/parse-server,支持https://www.postgresql.org或https://github.com/netreconlab/parse-hipaa/blob/main/docker-compose.mongo.yml。parse-hipaa还包含https://github.com/parse-community/parse-dashboard,用于在云端查看/修改数据。作为parse-server的衍生版本,parse-hipaa可用于https://docs.parseplatform.org/ios/guide/、https://docs.parseplatform.org/android/guide/、https://github.com/parse-community/Parse-SDK-Flutter/tree/master/packages/flutter#getting-started和基于Web的应用(https://docs.parseplatform.org/js/guide/)。默认启用https://docs.parseplatform.org/graphql/guide/和https://docs.parseplatform.org/rest/guide/ API,可直接测试或通过Parse Dashboard中的"API Console"测试。详情和示例请参见https://parseplatform.org/#sdks。parse-hipaa包含符合HIPAA合规所需的数据库审计和日志功能。
parse-hipaa提供以下特性:
要实现完全HIPAA和GDPR合规,您还需自行配置以下内容:
https://github.com/netreconlab/CareKitSample-ParseCareKit项目使用parse-hipaa和https://github.com/netreconlab/ParseCareKit。
风险提示:使用本镜像需自行承担风险,不保证完全符合HIPAA合规,我们不对数据处理不当负责。
Parse-HIPAA基于https://hub.docker.com/r/parseplatform/parse-server构建,包含以下额外包:
parse-hipaa镜像自动构建,可通过以下位置获取:
生产环境
latest - 指向最新发布版本,不含https://github.com/netreconlab/parse-hipaa-dashboard,镜像体积最小x.x.x - 指向特定发布版本,版本号与https://github.com/parse-community/parse-server#flavors--branches对应,不含dashboard,镜像体积最小x.x.x-dashboard - 指向特定发布版本,版本号与parse-server对应,包含https://github.com/netreconlab/parse-hipaa-dashboard,镜像体积较大开发环境
main - 包含最新代码,依赖最新parse-server版本,含dashboard,可能包含破坏性变更x.x.x-alpha/beta - 包含最新代码,依赖parse-server的alpha/beta版本,含dashboard,可能包含破坏性变更可组合使用多个标签镜像构建高可用(HA)应用,例如:1个Nginx反向代理/负载均衡器、1个x.x.x-dashboard parse-hipaa服务器、2个x.x.x parse-hipaa服务器、1个https://www.percona.com/software/database-tools/percona-monitoring-and-management服务器。
latest或x.x.x,适合构建HA集群或独立服务器,需单独部署dashboard。示例配置见https://github.com/netreconlab/parse-hipaa/blob/main/docker-compose.ymlx.x.x-dashboard,适合单服务器部署,包含dashboard功能。示例配置见https://github.com/netreconlab/parse-hipaa/blob/main/docker-compose-dashboard.ymlmain或x.x.x-alpha/beta,仅用于测试最新功能,不建议生产环境使用Heroku
通过一键部署快速部署到Heroku。注意:Heroku免费服务不符合HIPAA合规,需参考https://www.heroku.com/compliance并升级至https://devcenter.heroku.com/articles/heroku-postgres-and-private-spaces。详细步骤见https://docs.google.com/document/d/1fniJavK_3T_SXZs2wwn-wa8nX-LzhhNgSORRK1LaZYI/edit?usp=sharing。**非ParseCareKit应用请使用https://github.com/netreconlab/parse-hipaa/tree/Snapchat#heroku-with-postgres的Heroku按钮**。部署步骤:
NEW_RELIC_APP_NAME设为步骤1的应用名称PARSE_DASHBOARD_USER_ID用于登录Parse DashboardPARSE_DASHBOARD_USER_PASSWORD(密码哈希可通过bcrypt-generator.com生成)PARSE_SERVER_USING_PARSECAREKIT=falsehttps://YOUR_APP_NAME.herokuapp.com/parse(服务器)或https://YOUR_APP_NAME.herokuapp.com/dashboard(dashboard)访问,路径由PARSE_SERVER_MOUNT_PATH和PARSE_DASHBOARD_MOUNT_PATH定义Settings->Reveal Config Vars中获取PARSE_SERVER_APPLICATION_ID,客户端需配置applicationId(即该值)和serverURL(即https://YOUR_APP_NAME.herokuapp.com/parse)自定义Heroku部署
heroku.yml,将parse/Dockerfile.heroku改为parse/Dockerfile,使构建基于自定义代码parse/index.js和parse/cloud等文件Docker部署(Postgres/Mongo)
默认docker-compose.yml使用https://github.com/netreconlab/hipaa-postgres/,`docker-compose.mongo.yml`使用https://github.com/netreconlab/hipaa-mongo/。
Postgres(HIPAA合规版):
bashdocker-compose up
Mongo(HIPAA合规版):
bashdocker-compose -f docker-compose.mongo.yml up
Postgres(非合规版):
bashdocker-compose -f docker-compose.no.hipaa.yml up
Mongo(非合规版):未提供,参考标准https://github.com/parse-community/parse-server#inside-a-docker-container部署
环境变量配置
parse-hipaa由4个独立Docker镜像组成(同时使用3个),需正确配置环境变量。完整变量列表见https://github.com/netreconlab/parse-hipaa/blob/main/app.json。
netreconlab/parse-hipaa
bashPARSE_SERVER_APPLICATION_ID # 唯一字符串 PARSE_SERVER_PRIMARY_KEY # 唯一字符串 PARSE_SERVER_READ_ONLY_PRIMARY_KEY # 唯一字符串 PARSE_SERVER_ENCRYPTION_KEY # 文件加密密钥 PARSE_SERVER_OBJECT_ID_SIZE # ObjectId长度,默认10,建议医疗应用设为32 PARSE_SERVER_DATABASE_URI # 数据库连接URI,如postgres://${PG_PARSE_USER}:${PG_PARSE_PASSWORD}@db:5432/${PG_PARSE_DB} PORT # 端口,默认1337 PARSE_SERVER_MOUNT_PATH # 挂载路径,默认/parse PARSE_SERVER_URL # 服务器URL,默认http://parse:${PORT}/parse PARSE_SERVER_PUBLIC_URL # 公开URL,默认http://localhost:${PORT}/parse PARSE_SERVER_CLOUD # 云代码路径,默认/parse/cloud/main.js PARSE_SERVER_MOUNT_GRAPHQL # 是否启用GraphQL,默认true PARSE_SET_USER_CLP # 是否限制User类访问,默认1 PARSE_SERVER_ALLOW_CLIENT_CLASS_CREATION # 是否允许客户端创建类,默认false PARSE_SERVER_ALLOW_CUSTOM_OBJECTID # ParseCareKit必需,默认true PARSE_SERVER_ENABLE_SCHEMA_HOOKS # 跨实例同步 schema,默认true PARSE_SERVER_DIRECT_ACCESS # 禁用直接访问,默认false PARSE_SERVER_USING_PARSECAREKIT # 是否使用ParseCareKit,默认true PARSE_VERBOSE # 是否启用详细日志,默认false POSTGRES_PASSWORD # 需与hipaa-postgres的POSTGRES_PASSWORD一致
netreconlab/hipaa-postgres
bashPOSTGRES_PASSWORD # 数据库集群密码 PG_PARSE_USER # parse数据库用户名 PG_PARSE_PASSWORD # parse数据库密码 PG_PARSE_DB # parse数据库名称
netreconlab/hipaa-mongo
bash# 需手动修改/scripts/mongo-init.js,环境变量不直接传递 MONGO_INITDB_ROOT_USERNAME # 管理员用户名 MONGO_INITDB_ROOT_PASSWORD # 管理员密码 MONGO_INITDB_DATABASE # parse数据库名称
parse-hipaa-dashboard/parse-dashboard
bashPARSE_DASHBOARD_TRUST_PROXY # 代理后端时设置为1 PARSE_DASHBOARD_ALLOW_INSECURE_HTTP # 非代理环境设置为1(二选一) PARSE_DASHBOARD_COOKIE_SESSION_SECRET # 会话密钥 PARSE_DASHBOARD_MOUNT_PATH # 挂载路径,默认/dashboard
首次启动说明
首次启动时,parse-server(控制台显示为parse_1)可能因Postgres初始化而多次连接失败,属正常现象。Postgres初始化完成后会显示:
bashdb_1 | PostgreSQL init process complete; ready for start up.
parse-server连接成功后显示:
bashparse_1 | parse-server running on port 1337. parse_1 | publicServerURL: http://localhost:1337/parse, serverURL: http://parse:1337/parse parse_1 | GraphQL API running on http://localhost:1337/parsegraphql parse_1 | info: Parse LiveQuery Server starts running
控制台可能出现类似以下数据库错误日志,属正常现象(parse检查并配置数据库):
bashdb_1 | 2020-03-18 21:59:21.550 UTC [105] ERROR: duplicate key value violates unique constraint "pg_type_typname_nsp_index" ...
Singularity部署
提供https://sylabs.io/singularity/镜像,托管于GitHub Container Registry,示例配置见https://github.com/netreconlab/parse-hipaa/blob/main/singularity-compose.yml。
Parse Server默认绑定1337端口,访问地址http://localhost:1337/parse。可通过修改https://github.com/netreconlab/parse-hipaa/blob/main/index.js配置推送通知、密码重置、https://github.com/parse-community/parse-server#available-adapters等。该文件为Express应用,参考https://github.com/parse-community/parse-server#using-expressjs。
生产环境需创建索引优化查询:
Postgres
docker exec -u postgres -ti parse-hipaa_db_1 bash./usr/local/bin/setup-parse-index.sh幂等性配置
建议启用幂等性,参考https://github.com/parse-community/parse-server#idempotency-enforcement。Postgres可通过cron定期执行[parse_idempotency_delete_expired_rec
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务