Ir para o conteúdo do rodapé
USANDO O IRONSECUREDOC

Ação Docker Build Push (Como funciona para desenvolvedores)

O que é Docker?

Docker é uma potente ferramenta de código aberto que facilita a criação, implantação e gerenciamento de aplicativos, colocando-os em contêineres leves e portáteis. Os contêineres empacotam um aplicativo e suas dependências, incluindo bibliotecas, arquivos de configuração, e assim por diante, de modo que ele possa rodar mesmo em diferentes ambientes. Isso elimina todos os problemas de compatibilidade, permitindo que o aplicativo funcione da mesma maneira no laptop de um desenvolvedor, em um servidor ou na nuvem. Ele simplifica o processo de desenvolvimento, teste e dimensionamento, construindo as ferramentas de forma eficiente, enviando e executando contêineres, gerindo os recursos de forma mais simplista.

Docker Build Push Action (Como Funciona para Desenvolvedores): Figura 1 - Docker

O que é Imagem Docker?

Imagens são as blueprints do tipo Docker que carregam ambientes de execução consistentes. Desenvolvedores podem utilizar imagens prontas para uso do Docker Hub, um registro público, ou criar suas próprias imagens Docker. Ferramentas como Docker Compose e Kubernetes ampliam ainda mais as capacidades do Docker, adicionando orquestrações simples de configurações de múltiplos contêineres ou gerindo necessidades complexas de dimensionamento em mais plataformas.

Por que usar o Docker Build Push Action?

Automação Sem Atrito

Construir e enviar imagens Docker manualmente é exposto, propenso a erros, e demorado. Automatizar esses passos garante previsibilidade e adiciona horas no resultado final, especialmente quando a equipe cresce ou as atualizações são mais frequentes.

Integração Sem Atrito

A ação Docker Build Push funciona imediatamente com repositórios do GitHub para criar fluxos de trabalho em torno de eventos como envios de código, solicitações de pull ou um agendamento.

Construção Padrão de Imagens

A automação garante que cada vez que imagens Docker são construídas, elas sejam as mesmas, reduzindo assim erros/discrepâncias entre múltiplos ambientes, como desenvolvimento, staging e produção.

Implantação Fácil

Com a construção automatizada de imagens Docker e seu envio para os repositórios, a implantação pode se tornar relativamente fácil. Ferramentas como Kubernetes ou Docker Swarm podem ser usadas para puxar ou construir imagens multi-plataforma diretamente do registro Docker, reduzindo assim o tempo de inatividade.

Como Funciona o Docker Build Push Action

A Ação de Construção e Envio do Docker faz três coisas principais:

  1. Configurar Login do Docker: Autenticação do registro de contêiner para enviar de forma segura imagens Docker.
  2. Construção de Imagem: Executa comandos de construção do Docker usando um Dockerfile que contém instruções.
  3. Enviar para Registro: Envia a imagem construída para um registro de contêiner alvo.

Esses passos são definidos em um arquivo de fluxo de trabalho do GitHub Actions (.github/workflows/seu-fluxo-de-trabalho.yml), onde você especifica gatilhos, configurações de construção e credenciais de registro.

Implementar Docker Build Push Action

1: Prepare Seu Repositório

  • Adicione um Dockerfile descrevendo o aplicativo conteinerizado.
  • Adicione quaisquer arquivos de configuração ou scripts necessários para a construção.
# 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"]

2: Adicione Credenciais de Registro como Segredos do GitHub

Para construir e enviar imagens Docker para um registro de contêiner, você precisa de credenciais. Adicione-as como Segredos do GitHub:

  • Acesse as configurações do seu repositório no GitHub.
  • Vá para Segredos e Variáveis > Ações.

Adicione os seguintes segredos:

  • USERNAME: Seu nome de usuário no Docker Hub.
  • PASSWORD: Seu token de acesso ou senha do Docker Hub.

Para outros registries, isso é semelhante, mas às vezes requer credenciais extras, por exemplo, AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY para Amazon ECR.

3: Crie o fluxo de trabalho do GitHub Actions

Adicione a linha abaixo no arquivo de fluxo de trabalho YAML em .github/workflows/docker-build-push.yml.

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
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
YAML

Envio para Principal: O fluxo de trabalho será acionado a cada envio que ocorrer no branch principal.

Abra o Código: Utilize a ação actions/checkout para fazer o checkout do repositório.

Login no Registro: Autentique-se no Docker Hub usando os segredos fornecidos.

Construir e Enviar: Executa o Docker Build Push Action que construirá a imagem do diretório atual até o contexto e enviá-la para username/repositório: última.

Comite o arquivo de fluxo de trabalho em seu repositório. Com um simples envio, o fluxo de trabalho será acionado para construir a imagem e enviá-la para o registro especificado.

O que é IronSecureDoc?

IronSecureDoc é um produto recém-desenvolvido da Iron Software projetado especificamente para proteger documentos digitais, principalmente PDFs, através de criptografia e controles bastante robustos. Isso permitirá ainda mais que uma organização instale protocolos de criptografia avançados como AES-256 para que as referidas informações sensíveis não possam ser visualizadas sem permissão autorizada. Isso significa que o referido documento só pode ser aberto pelo usuário autorizado, pois a impressão, edição e cópia dele têm restrições juntamente com permissões personalizadas. Além disso, a proteção por senha e assinaturas digitais aumentam a segurança e a integridade dos documentos e marca d'água.

Docker Build Push Action (Como Funciona para Desenvolvedores): Figura 2 - IronSecureDoc: O Servidor de Segurança e Conformidade de PDF

IronSecureDoc é amigável para desenvolvedores e pode abrigar confortavelmente aplicações via Docker ou outros ambientes de programação, portanto, deve ser capaz de se adaptar a muitos fluxos de trabalho empresariais. Por exemplo, nos setores de saúde, financeiro e jurídico, a confidencialidade dos documentos significa tudo. O IronSecureDoc combina os recursos de criptografia e controle de documentos dentro de uma organização com garantia de proteção que permite conformidade, compartilhamento fácil e seguro com um parceiro ou cliente externo.

Como o IronSecureDoc Funciona

IronSecureDoc é distribuído como um contêiner Docker e oferece exposição às funcionalidades de construção por meio de endpoints de API, o que o manterá escalável e uniforme. Os desenvolvedores baixam uma imagem Docker pré-construída do IronSecureDoc de um registro de contêiner e a incluem em suas aplicações.

Fluxo de Trabalho de Documentos com IronSecureDoc

  • Crie e envie o contêiner IronSecureDoc usando Docker Build Push Action.
  • Implantação do mesmo contêiner em uma plataforma de nuvem como AWS ECS ou Kubernetes.
  • Integre seu aplicativo para se comunicar com o IronSecureDoc para qualquer operação de documento.

Instalar e Executar o IronSecureDoc

Para baixar a imagem Docker do IronSecureDoc do repositório do GitHub abaixo, no Prompt de Comando ou em uma janela de terminal aberta, execute o seguinte comando.

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
SHELL

Docker Build Push Action (Como Funciona para Desenvolvedores): Figura 3 - Pull Docker Image

Após baixar uma imagem do contêiner Docker, temos outro comando para iniciar o IronSecureDoc, um contêiner operacional.

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

O comando Docker run acima criará uma instância de contêiner do IronSecureDoc.

Usando o IronSecureDoc

A API REST do IronSecureDoc foi discutida em outro lugar, mas basicamente, ela permite que o usuário edite, certifique e criptografe documentos imediatamente após a instalação e inicialização do Docker. Aqui está o link para a documentação.

Docker Build Push Action (Como Funciona para Desenvolvedores): Figura 4 - REST API

Também poderíamos criptografar um documento enviando para a API do IronSecureDoc assim:

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'
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

Isso encaminhará automaticamente o documento para o IronSecureDoc, onde será corretamente criptografado.

Conclusão

Tudo começa com Docker Build Push Action e IronSecureDoc. Eles combinam duas ferramentas muito poderosas que desbloqueiam a capacidade de conteinerizar fluxos de trabalho com desenvolvimento automatizado e escalável sendo seguro. Docker Build Push Action cuida da construção e implantação automatizadas no processo de desenvolvimento de imagens de contêiner, e IronSecureDoc lida com segurança robusta de documentos dentro desses contêineres. Tudo se resume a pipelines simplificados de desenvolvedores e desempenho confiável em todos os ambientes. Seja gerenciando uma implantação de aplicações ou protegendo documentos sensíveis, essas ferramentas em seu fluxo de trabalho estão prestes a levá-lo ao desenvolvimento de software moderno e eficiente.

IronSecureDoc: onde recursos de segurança específicos de documentos podem ser adicionados, incluindo criptografia de arquivo, controles de acesso e autenticação da autenticidade do documento usando assinaturas digitais. Juntos, certificados Docker e IronSecureDoc proporcionam segurança de ciclo completo, protegendo tudo, desde infraestrutura até dados sensíveis armazenados. Para saber mais sobre a licença do IronSecureDoc, visite a página de licenciamento. Para informações sobre muitos dos produtos da Iron Software, siga este link da biblioteca suite.

Perguntas frequentes

Como posso converter HTML para PDF em C#?

Você pode usar o método RenderHtmlAsPdf do IronPDF para converter strings HTML em PDFs. Você também pode converter arquivos HTML em PDFs usando o RenderHtmlFileAsPdf .

O que é Docker?

O Docker é uma plataforma de código aberto que simplifica a criação, a implantação e o gerenciamento de aplicações por meio de contêineres. Esses contêineres empacotam as aplicações com suas dependências, garantindo um comportamento consistente em diferentes ambientes.

Como a ação Docker Build Push otimiza os processos de fluxo de trabalho?

A ação Docker Build Push automatiza a criação e o envio de imagens Docker para repositórios do GitHub, reduzindo erros e economizando tempo. Ela cria fluxos de trabalho acionados por eventos como envios de código ou solicitações de pull.

Por que o Docker é útil para desenvolvedores?

O Docker é útil para desenvolvedores porque encapsula aplicações em contêineres, garantindo desempenho consistente e mitigando problemas de compatibilidade em diferentes ambientes. Isso simplifica os processos de desenvolvimento, implantação e gerenciamento.

Quais são as vantagens de usar contêineres Docker?

Os contêineres Docker oferecem vantagens como portabilidade, escalabilidade e consistência entre ambientes. Eles encapsulam aplicativos com suas dependências, o que reduz problemas de compatibilidade e aumenta a eficiência da implantação.

Como o IronSecureDoc garante a segurança dos documentos?

O IronSecureDoc protege documentos digitais usando técnicas robustas de criptografia, como AES-256, além de recursos como proteção por senha e assinaturas digitais. É especialmente útil em setores que exigem alta confidencialidade, como saúde e finanças.

O IronSecureDoc pode ser integrado a fluxos de trabalho existentes?

Sim, o IronSecureDoc pode ser integrado a fluxos de trabalho existentes, pois opera como um contêiner Docker e fornece funcionalidades por meio de endpoints de API. Isso o torna flexível e fácil de usar em diversos cenários de implantação.

Como a ação Docker Build Push melhora a eficiência da implantação?

A ação Docker Build Push aprimora a eficiência de implantação automatizando o processo de criação e envio de imagens Docker, garantindo a criação consistente de imagens e reduzindo o tempo de inatividade por meio da integração com plataformas como o Kubernetes.

Qual é o papel das imagens Docker na implantação de aplicações?

As imagens Docker servem como modelos para contêineres, contendo a aplicação e suas dependências. Elas garantem consistência em diferentes ambientes, tornando-as cruciais para a implantação confiável de aplicações.

Como automatizar a criação de imagens Docker com o GitHub Actions?

Para automatizar a criação de imagens Docker com o GitHub Actions, crie um arquivo de fluxo de trabalho que especifique gatilhos como envios de código, utilize ações de login e compilação do Docker e envie a imagem criada para um registro. Essa automação agiliza o processo de compilação e implantação.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me