本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
!photo_2023-07-28_15-28-52
维护者:
Nixys LLC
获取帮助:
Nixys Support Bot、维护者*** 或 GitHub Issues
提交issue:
[***]
Dockerfile 链接v1.15.0, latestnxs-data-anonymizer 是一款用于匿名化 PostgreSQL 和 MySQL/MariaDB/Percona 数据库转储的工具。
您可以直接从控制台使用该Docker镜像,或将其集成到CI/CD流程中。
您也可以将该工具作为二进制文件使用。详情参见 GitHub 仓库。
使用前,您需要检查数据库结构并设置 nxs-data-anonymizer 配置,以匹配需要匿名化的敏感数据。
例如,若需实时将生产环境的PostgreSQL数据库匿名化到开发环境(需安装PostgreSQL客户端),可使用以下命令:
docker run -it -v "/path/to/nxs-data-anonymizer.conf:/nxs-data-anonymizer.conf" nixyslab/nxs-data-anonymizer sh -c 'export PGPASSWORD=password; pg_dump -U postgres prod | /nxs-data-anonymizer -t pgsql -c /nxs-data-anonymizer.conf | psql -U postgres dev'
本节介绍如何将nxs-data-anonymizer集成到GitLab CI中。您可将以下任务添加到 .gitlab-ci.yml 并根据需求调整。
本节描述的任务将执行以下操作:
main 分支设置特定标签时运行production 数据库转储,匿名化后上传至S3存储桶任务示例:
anonymize: stage: anonymize image: nixyslab/nxs-data-anonymizer:latest variables: GIT_STRATEGY: none PG_HOST: ${PG_HOST_PROD} PG_USER: ${PG_USER_PROD} PGPASSWORD: ${PG_PASS_PROD} before_script: - echo "${S3CMD_CFG}" > ~/.s3cmd - echo "${NXS_DA_CFG}" > /nxs-data-anonymizer.conf script: - pg_dump -h ${PG_HOST} -U ${PG_USER} --schema=${PG_SCHEMA} ${PG_DATABASE} | /nxs-data-anonymizer -t pgsql -c /nxs-data-anonymizer.conf | gzip | s3cmd put - s3://bucket/anondump.sql.gz only: - /^v.*$/ except: - branches - merge_requests
本节描述的任务将执行以下操作:
stage 分支的手动任务stage 数据库任务示例:
restore-stage: stage: restore image: nixyslab/nxs-data-anonymizer:latest variables: GIT_STRATEGY: none PG_HOST: ${PG_HOST_STAGE} PG_USER: ${PG_USER_STAGE} PGPASSWORD: ${PG_PASS_STAGE} before_script: - echo "${S3CMD_CFG}" > ~/.s3cmd script: - s3cmd --no-progress --quiet get s3://bucket/anondump.sql.gz - | gunzip | psql -h ${PG_HOST} -U ${PG_USER} --schema=${PG_SCHEMA} ${PG_DATABASE} only: - stage when: manual
本节描述上述GitLab CI任务示例中使用的变量。
| 变量 | 描述 |
|---|---|
S3CMD_CFG | S3存储配置 |
PG_SCHEMA | PostgreSQL模式 |
PG_DATABASE | PostgreSQL数据库名称 |
| 变量 | 描述 |
|---|---|
NXS_DA_CFG | nxs-data-anonymizer配置 |
PG_HOST_PROD | PostgreSQL主机 |
PG_USER_PROD | PostgreSQL用户 |
PG_PASS_PROD | PostgreSQL密码 |
| 变量 | 描述 |
|---|---|
PG_HOST_STAGE | PostgreSQL主机 |
PG_USER_STAGE | PostgreSQL用户 |
PG_PASS_STAGE | PostgreSQL密码 |
本节介绍如何将nxs-data-anonymizer集成到GitHub Actions中。您可将以下任务添加到 .github 工作流并根据需求调整。
本节描述的任务可执行以下操作:
production 数据库转储,匿名化后上传至S3存储桶on: push: tags: - v*.* jobs: anonymize: runs-on: ubuntu-latest container: image: nixyslab/nxs-data-anonymizer:latest env: PG_HOST: ${{ secrets.PG_HOST_PROD }} PG_USER: ${{ secrets.PG_USER_PROD }} PGPASSWORD: ${{ secrets.PG_PASS_PROD }} PG_SCHEMA: ${{ secrets.PG_SCHEMA }} PG_DATABASE: ${{ secrets.PG_DATABASE }} steps: - name: Create services configs run: | echo "${{ secrets.S3CMD_CFG }}" > ~/.s3cmd echo "${{ secrets.NXS_DA_CFG }}" > /nxs-data-anonymizer.conf - name: Anonymize run: | pg_dump -h ${PG_HOST} -U ${PG_USER} --schema=${PG_SCHEMA} ${PG_DATABASE} | /nxs-data-anonymizer -t pgsql -c /nxs-data-anonymizer.conf | gzip | s3cmd put - s3://bucket/anondump.sql.gz
本节描述的任务将执行以下操作:
stage 数据库on: workflow_dispatch jobs: restore-stage: runs-on: ubuntu-latest container: image: nixyslab/nxs-data-anonymizer:latest env: PG_HOST: ${{ secrets.PG_HOST_STAGE }} PG_USER: ${{ secrets.PG_USER_STAGE }} PGPASSWORD: ${{ secrets.PG_PASS_STAGE }} PG_SCHEMA: ${{ secrets.PG_SCHEMA }} PG_DATABASE: ${{ secrets.PG_DATABASE }} steps: - name: Create services configs run: | echo "${{ secrets.S3CMD_CFG }}" > ~/.s3cmd - name: Restore run: | s3cmd --no-progress --quiet get s3://bucket/anondump.sql.gz - | gunzip | psql -h ${PG_HOST} -U ${PG_USER} --schema=${PG_SCHEMA} ${PG_DATABASE}
本节描述上述GitHub Actions任务示例中使用的密钥。
| 变量 | 描述 |
|---|---|
S3CMD_CFG | S3存储配置 |
PG_SCHEMA | PostgreSQL模式 |
PG_DATABASE | PostgreSQL数据库名称 |
| 变量 | 描述 |
|---|---|
NXS_DA_CFG | nxs-data-anonymizer配置 |
PG_HOST_PROD | PostgreSQL主机 |
PG_USER_PROD | PostgreSQL用户 |
PG_PASS_PROD | PostgreSQL密码 |
| 变量 | 描述 |
|---|---|
PG_HOST_STAGE | PostgreSQL主机 |
PG_USER_STAGE | PostgreSQL用户 |
PG_PASS_STAGE | PostgreSQL密码 |
nxs-data-anonymizer 是开源软件,基于 Apache License 2.0 许可发布。
与所有Docker镜像一样,此镜像可能包含其他软件,这些软件可能受其他许可证约束(例如基础发行版中的Bash等,以及主要软件的任何直接或间接依赖项)。
对于任何预构建镜像的使用,镜像用户有责任确保对该镜像的任何使用符合其中包含的所有软件的相关许可证。===SHORT_DESC=== nxs-data-anonymizer是一款用于匿名化PostgreSQL和MySQL/MariaDB/Percona数据库转储的工具,可保护敏感数据,适用于开发、测试环境数据准备或CI/CD流程集成。 ===FULL_DESC=== !photo_2023-07-28_15-28-52
维护者:
Nixys LLC
获取帮助:
Nixys Support Bot、维护者*** 或 GitHub Issues
提交issue:
[***]
Dockerfile 链接v1.15.0, latestnxs-data-anonymizer 是一款用于匿名化 PostgreSQL 和 MySQL/MariaDB/Percona 数据库转储的工具。
您可以直接从控制台使用该Docker镜像,或将其集成到CI/CD流程中。
您也可以将该工具作为二进制文件使用。详情参见 GitHub 仓库。
使用前,您需要检查数据库结构并设置 nxs-data-anonymizer 配置,以匹配需要匿名化的敏感数据。
例如,若需实时将生产环境的PostgreSQL数据库匿名化到开发环境(需安装PostgreSQL客户端),可使用以下命令:
docker run -it -v "/path/to/nxs-data-anonymizer.conf:/nxs-data-anonymizer.conf" nixyslab/nxs-data-anonymizer sh -c 'export PGPASSWORD=password; pg_dump -U postgres prod | /nxs-data-anonymizer -t pgsql -c /nxs-data-anonymizer.conf | psql -U postgres dev'
本节介绍如何将nxs-data-anonymizer集成到GitLab CI中。您可将以下任务添加到 .gitlab-ci.yml 并根据需求调整。
本节描述的任务将执行以下操作:
main 分支设置特定标签时运行production 数据库转储,匿名化后上传至S3存储桶任务示例:
anonymize: stage: anonymize image: nixyslab/nxs-data-anonymizer:latest variables: GIT_STRATEGY: none PG_HOST: ${PG_HOST_PROD} PG_USER: ${PG_USER_PROD} PGPASSWORD: ${PG_PASS_PROD} before_script: - echo "${S3CMD_CFG}" > ~/.s3cmd - echo "${NXS_DA_CFG}" > /nxs-data-anonymizer.conf script: - pg_dump -h ${PG_HOST} -U ${PG_USER} --schema=${PG_SCHEMA} ${PG_DATABASE} | /nxs-data-anonymizer -t pgsql -c /nxs-data-anonymizer.conf | gzip | s3cmd put - s3://bucket/anondump.sql.gz only: - /^v.*$/ except: - branches - merge_requests
本节描述的任务将执行以下操作:
stage 分支的手动任务stage 数据库任务示例:
restore-stage: stage: restore image: nixyslab/nxs-data-anonymizer:latest variables: GIT_STRATEGY: none PG_HOST: ${PG_HOST_STAGE} PG_USER: ${PG_USER_STAGE} PGPASSWORD: ${PG_PASS_STAGE} before_script: - echo "${S3CMD_CFG}" > ~/.s3cmd script: - s3cmd --no-progress --quiet get s3://bucket/anondump.sql.gz - | gunzip | psql -h ${PG_HOST} -U ${PG_USER} --schema=${PG_SCHEMA} ${PG_DATABASE} only: - stage when: manual
本节描述上述GitLab CI任务示例中使用的变量。
| 变量 | 描述 |
|---|---|
S3CMD_CFG | S3存储配置 |
PG_SCHEMA | PostgreSQL模式 |
PG_DATABASE | PostgreSQL数据库名称 |
| 变量 | 描述 |
|---|---|
NXS_DA_CFG | nxs-data-anonymizer配置 |
PG_HOST_PROD | PostgreSQL主机 |
PG_USER_PROD | PostgreSQL用户 |
PG_PASS_PROD | PostgreSQL密码 |
| 变量 | 描述 |
|---|---|
PG_HOST_STAGE | PostgreSQL主机 |
PG_USER_STAGE | PostgreSQL用户 |
PG_PASS_STAGE | PostgreSQL密码 |
本节介绍如何将nxs-data-anonymizer集成到GitHub Actions中。您可将以下任务添加到 .github 工作流并根据需求调整。
本节描述的任务可执行以下操作:
production 数据库转储,匿名化后上传至S3存储桶on: push: tags: - v*.* jobs: anonymize: runs-on: ubuntu-latest container: image: nixyslab/nxs-data-anonymizer:latest env: PG_HOST: ${{ secrets.PG_HOST_PROD }} PG_USER: ${{ secrets.PG_USER_PROD }} PGPASSWORD: ${{ secrets.PG_PASS_PROD }} PG_SCHEMA: ${{ secrets.PG_SCHEMA }} PG_DATABASE: ${{ secrets.PG_DATABASE }} steps: - name: Create services configs run: | echo "${{ secrets.S3CMD_CFG }}" > ~/.s3cmd echo "${{ secrets.NXS_DA_CFG }}" > /nxs-data-anonymizer.conf - name: Anonymize run: | pg_dump -h ${PG_HOST} -U ${PG_USER} --schema=${PG_SCHEMA} ${PG_DATABASE} | /nxs-data-anonymizer -t pgsql -c /nxs-data-anonymizer.conf | gzip | s3cmd put - s3://bucket/anondump.sql.gz
本节描述的任务将执行以下操作:
stage 数据库on: workflow_dispatch jobs: restore-stage: runs-on: ubuntu-latest container: image: nixyslab/nxs-data-anonymizer:latest env:
免费版仅支持 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 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429