IRONSOFTWAREHOME
USING IRONSECUREDOC

Docker Build Push Action(开发者工具如何工作)

Curtis Chau
Curtis Chau
Updated: 2026年6月28日

什么是Docker?

Docker 是一个开源的强大工具,通过将应用程序放入轻量级、可移植的容器中来简化构建、部署和管理应用程序的过程。 这些容器打包了应用程序及其依赖项,包括库、配置文件等,以便它甚至可以跨环境运行。 这消除了所有兼容性问题,意味着应用程序在开发人员的笔记本电脑上与在服务器或云中的表现一样。 通过高效构建工具、运输并运行 容器,简化开发、测试和扩展过程,从而更简化地管理资源。

Docker构建推送操作(开发者的工作原理):图1 - Docker

什么是Docker Image?

镜像是Docker类型的蓝图,携带一致的运行时环境。 开发人员可以利用来自Docker Hub的现成镜像,这是一个公共注册表,或者创建自己的Docker镜像。 像Docker Compose和Kubernetes这样的工具通过添加多容器设置的简单编排或管理更复杂的扩展需求进一步扩展Docker的能力。

为什么使用Docker Build Push Action?

无摩擦自动化

手动构建和推送Docker镜像是公开的,容易出错且耗时。 自动化这些步骤确保可预测性,并为底线节省了时间,尤其是在团队扩展或更新更频繁时。

无缝集成

Docker Build Push Action 与 GitHub 仓库无缝协作,可以围绕代码推送、拉取请求或计划事件创建工作流程。

标准镜像构建

自动化确保每次构建Docker镜像时,都是保持一致的; 从而减少了跨多个环境(如开发、暂存和生产环境)的错误/差异。

轻松部署

通过使用构建的自动化Docker镜像及其推送到存储库中,部署可相对简单。 Kubernetes或Docker Swarm等工具可以直接从Docker注册表中拉取或构建多平台镜像,从而减少停机时间。

Docker Build Push Action 如何工作

构建和推送Docker操作做了三件核心的事情:

  1. 设置Docker登录:容器注册表身份验证以安全地推送Docker镜像。
  2. 镜像构建:使用包含指令的Dockerfile运行Docker构建命令。
  3. 推送到注册表:将构建的镜像推送到目标容器注册表。

这些步骤在GitHub Actions工作流文件(.github/workflows/your-workflow.yml)中定义,其中您指定触发器、构建配置和注册表凭据。

实现Docker Build Push Action

1: 准备您的存储库

  • 添加一个Dockerfile描述容器化的应用程序。
  • 添加构建所需的任何配置文件或脚本。
# Use Node.js as the base image
FROM node:14

# Set the working directory
WORKDIR /app

# Copy package.json and install dependencies
COPY package.json .
RUN npm install

# Copy the application code
COPY . .

# Expose the application’s port
EXPOSE 3000

# Start the application
CMD ["npm", "start"]
Text

2: 将注册表凭据添加为GitHub机密

要将Docker镜像构建并推送到容器注册表,您需要凭据。 将这些添加为GitHub Secrets:

  • 进入GitHub上的存储库设置。
  • 转到 Secrets 和 Variables > Actions。

添加以下秘密:

  • USERNAME:您的Docker Hub用户名。
  • PASSWORD:您的Docker Hub访问令牌或密码。

对于其他注册表,这类似,但有时需要额外的凭证,例如亚马逊ECR的AWS_SECRET_ACCESS_KEY

3: 创建GitHub Actions工作流程

在.github/workflows/docker-build-push.yml文件的YAML工作流文件中添加以下行。

name: Docker Build and Push

on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      # Step 1: Check out the repository
      - name: Checkout code
        uses: actions/checkout@v3
        
      # Step 2: Log in to Docker Hub
      - name: Log in to Docker Hub
        uses: docker/login-action@v2
        with:
          username: ${{secrets.USERNAME}}
          password: ${{secrets.PASSWORD}}

      # Step 3: Build and push the Docker image
      - name: Build and push
        uses: docker/build-push-action@v4
        with:
          context: .
          push: true
          tags: username/repository:latest
Text

推送到Main: 每次推送到主分支时,工作流将被触发。

检出代码: 使用actions/checkout操作以检出存储库。

登录到注册表: 使用提供的秘密验证Docker Hub。

构建和推送: 运行Docker Build Push Action,将从当前目录构建镜像并将其推送到用户名/存储库:latest。

将工作流文件提交到您的存储库。 通过一个简单的推送,工作流将触发以构建镜像并将其推送到您指定的注册表。

IronSecureDoc是什么?

IronSecureDoc 是Iron Software的新开发产品,专为通过相当稳健的加密和控制来保护数字文档(主要是PDF)而设计。 这将进一步使组织能够安装先进的加密协议如AES-256,以便所述敏感信息在未经授权的权限下无法查看。 这意味着所述文档只能由授权用户打开,因为其打印、编辑和复制受限,并带有自定义权限。 此外,密码保护和数字签名增强了文档中的安全性和完整性以及水印。

Docker构建推送操作(开发者的工作原理):图2 - IronSecureDoc:PDF安全和合规服务器

IronSecureDoc对开发人员友好,可以通过Docker或其他编程环境舒适地容纳应用程序,从而能够适应许多业务工作流程。 例如,在医疗、金融和法律部门,文件的保密性意味着一切。 IronSecureDoc结合了组织内文件加密和控制的功能,确保安全保存,使其能够与外部合作伙伴或客户遵从、简单和安全地共享。

IronSecureDoc如何工作

IronSecureDoc以Docker容器形式提供,通过API端点提供的构建功能曝光,以保持其可扩展性和一致性。 开发人员从容器注册表中拉取预构建的IronSecureDoc Docker镜像并将其包含在他们的应用程序中。

IronSecureDoc的文件工作流

  • 使用Docker Build Push Action创建并推送IronSecureDoc容器。
  • 在AWS ECS或Kubernetes等云平台上部署同一容器。
  • 将您的应用程序与IronSecureDoc集成,以便进行任何文件操作。

安装并运行 IronSecureDoc

要从下面的GitHub存储库中拉取IronSecureDoc Docker镜像,请在命令提示符或打开的终端窗口中运行以下命令。

docker pull ironsoftwareofficial/ironsecuredoc
SHELL

Docker构建推送操作(开发者的工作原理):图3 - 拉取Docker镜像

从Docker容器中拉取镜像后,我们还有另一个命令来启动IronSecureDoc,一个运行中的容器。

docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
SHELL

上述Docker运行命令将创建IronSecureDoc的容器实例。

使用IronSecureDoc

IronSecureDoc的REST API在其他地方进行了讨论,但基本上,它允许用户在安装和启动Docker时立即编辑、认证和加密文档。 这是文档的 链接

Docker构建推送操作(开发者的工作原理):图4 - REST API

我们还可以通过像这样发布到IronSecureDoc API来加密文档:

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
SHELL

这将自动将文档路由到IronSecureDoc,文档将在那里正确加密。

结论

一切都从Docker Build Push Action和IronSecureDoc开始。 它们合并了两个非常强大的工具,这些工具可以解锁用于工作流的容器化,使得自动化和可扩展的开发变得安全。 Docker Build Push Action负责容器镜像开发过程中的自动化构建和部署,IronSecureDoc负责这些容器内的强大文档安全性。 这一切都归结为来自开发人员的流线型管道和在各环境中可靠的性能。 无论您是在管理应用程序的部署还是安全处理敏感文档,这些工具在您的工作流中将推动您迈向现代高效的软件开发。

IronSecureDoc:可以添加文件加密、访问控制以及使用数字签名验证文档真实性的文档特定安全功能。 一起,Docker证书和IronSecureDoc提供了完整的安全周期,从基础设施到存储的敏感数据全方位保护。 要了解更多关于IronSecureDoc许可证的信息,请访问 授权页面。 有关Iron Software的多种产品的信息,请关注此 库套件链接

Key in blue circle

立即获取免费的 30 天试用版密钥

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

OR
bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
预约您的免费现场演示
Booking Badge

深受全球数百万工程师信赖

Iron Software 的客户徽标
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥
无需信用卡或创建账户