Blog

Docker para Iniciantes: Tutorial Prático (Instalação + Primeiro Container) | Deltaops

Você já ouviu “funciona na minha máquina” e precisou resolver por horas um problema que não existia no seu ambiente local? O Docker foi criado exatamente para eliminar esse problema. Neste guia, portanto, você vai aprender o que é Docker, como instalar em qualquer sistema operacional e como rodar seu primeiro container com comandos reais, do zero. O Que É Docker e Por Que Todo Dev Deveria Conhecer Docker é uma plataforma de conteinerização. Em outras palavras, ele permite empacotar uma aplicação com tudo que ela precisa. container. Pense assim: se você fosse mudar de cidade, não levaria só as chaves da sua casa nova. Você levaria tudo que precisa para funcionar — móveis, utensílios, roupas. O Docker faz exatamente isso com sua aplicação. A principal diferença em relação a uma máquina virtual (VM) é que a VM emula um

AWS S3: Criando um bucket usando CLI

Criar um bucket AWS S3 (Simple Storage Service) usando AWS CLI (Command Line Interface) é muito fácil e podemos criar um bucket S3 usando poucos comandos AWS CLI.

Git: Primeiros Passos com Controle de Versão

Git é um sistema de controle de versão distribuído amplamente utilizado por desenvolvedores de software. Ele permite que você acompanhe as alterações no seu código, colabore com outras pessoas e mantenha um histórico das modificações.

Docker: Removendo todos os recursos

Docker é uma ferramenta poderosa para o desenvolvimento e implantação de aplicativos, mas às vezes você pode acabar com muitos recursos Docker acumulados em seu sistema, ocupando espaço e gerando confusão. Neste post, vamos aprender como remover todos os recursos Docker de uma só vez.

Ansible: Estrutura de pastas de uma role – guia completo

No post anterior, criamos um primeiro playbook, onde basicamente colocamos as instruções em um arquivo e aplicamos esse playbook. Você ressalta que essa não é a melhor prática, especialmente quando se trata de tarefas mais complexas, como a instalação completa de algum software.

Monitoramento básico: combinação essencial de 4 ferramentas (Zabbix, Prometheus, Grafana e 1p)

No universo da infraestrutura, cloud e DevOps, existem diversas ferramentas que fazem basicamente as mesmas coisas. Quando o assunto é monitoramento e observabilidade, a quantidade de opções pode deixar qualquer iniciante confuso. Na minha experiência, vi clientes com stacks extremamente complexas e telas maravilhosas, mas que não conseguiam capturar o básico: disco cheio, CPU em 100%, expiração de certificado SSL. Por isso, escrevi este guia com uma combinação essencial para monitoramento básico – o feijão com arroz bem feito, integrado com a equipe de NOC. Vamos começar com o básico e, conforme a necessidade do negócio, evoluímos a stack. Para ficar mais didático, separei as sugestões entre infraestrutura on-premises e cloud-native. Resumo rápido: as 4 ferramentas essenciais Ferramenta Tipo Melhor para Integração Zabbix Monitoramento tradicional On-premises, servidores, redes, bancos de dados ✅ Grafana Prometheus Métricas time-series Cloud, Kubernetes, containers, microsserviços

Kubernetes: Criando seu cluster localmente com Kind

Neste tutorial, você vai aprender como criar um cluster Kubernetes local com Kind, uma ferramenta leve e gratuita. Se você quer se familiarizar com o Kubernetes sem custos de nuvem ou limitações de clusters temporários, o Kind é a solução ideal para desenvolvimento e testes. Esse ambiente pode ser usado como um “playground” para praticar as certificações CKA, CKAD e CKS do Kubernetes. Para isso, vamos utilizar o kind. Para saber mais sobre o kind, acesse o link abaixo. https://kind.sigs.k8s.io/ No meu caso estarei usando o Ubuntu 22.04. A instalação do Kind nessa distribuição é bastante simples. Instalando o Kind no Ubuntu Pré-requisitos: Docker, kubectl e Go Para utilizar o Kind, você precisará ter o Docker instalado e em execução. Caso você ainda não tenha o Docker instalado, você pode seguir as instruções no link abaixo: Instalar o kubectl na sua máquina local permitirá que você acesse o

Ansible: Primeiros Passos

Ansible é uma ferramenta de automação de infraestrutura e gerenciamento de configuração de Open Source. Ela permite que os administradores de sistema e desenvolvedores provisionem, configurem e gerenciem servidores, aplicativos e ambientes de maneira rápida e eficiente. Algumas das principais características do Ansible são: Conceitos básicos do Ansible Conceito Definição Host Servidor gerenciado pelo Ansible Group Conjunto de hosts com um atributo comum Inventory Arquivo que define hosts e grupos Module Unidade de código executada nos hosts remotos Task Ação que combina um módulo e seus argumentos Playbook Lista ordenada de tarefas em YAML Role Estrutura reutilizável para organizar código YAML: Um formato de dados popular e simples que é muito limpo e compreensível por humanos. Resumi bem o que é o Ansible e alguns conceitos e agora vamos pra prática e ver como a gente pode usar essa ferramenta. No meu caso estarei usando o Ubuntu

Docker: Algumas boas práticas para a criação de Dockerfiles

Dockerfiles são a base para a construção de imagens Docker, peça fundamental no desenvolvimento e implantação de aplicações containerizadas. Para criar Dockerfiles robustos, eficientes e fáceis de manter, é essencial seguir boas práticas. Neste guia, você vai aprender as principais boas práticas para Dockerfiles com exemplos práticos e comandos reais. 1- Minimize o número de camadas consolidando as instruções ❌ Evite: múltiplas camadas desnecessárias RUN apk updateRUN apk add curlRUN apk add vim ✅ Faça: consolide em uma única camada RUN apk update && \apk add curl && \apk add vim Cada instrução em um Dockerfile cria uma nova camada na imagem Docker. Quanto mais instruções, mais camadas – e isso impacta diretamente o desempenho, o tempo de build e o tamanho final da imagem. Por isso, o número de instruções deve ser reduzido ao mínimo possível. 2- Evite instalar pacotes desnecessários Uma das principais boas práticas

AER: Multiple Corrected error received

O seu disco rígido no Ubuntu encheu devido aos logs excessivos no syslog e no kernel, contendo essas informações. Jun 15 11:38:52 x99 kernel: pcieport 0000:00:03.0: AER: Multiple Corrected error received: id=0018 Jun 15 15:38:52 x99 kernel: pcieport 0000:00:03.0: PCIe Bus Error: severity=Corrected, type=Data Link Layer, id=0018(Receiver ID) Posso dar pelo menos alguns detalhes, embora não consiga explicar completamente o que acontece. Conforme descrito aqui , por exemplo , a CPU se comunica com o controlador de barramento PCIe por meio de pacotes da camada de transação (TLPs). O hardware detecta quando há falhas e o kernel do Linux relata isso como mensagens. A opção do kernel pci=nommconf desativa o espaço de configuração PCI mapeado em memória, que está disponível no Linux desde o kernel 2.6. Grosso modo, todos os dispositivos PCI possuem uma área que descreve esse dispositivo (que você vê com lspci -vv), e o método original para acessar essa área envolve

Docker para Iniciantes: Tutorial Prático (Instalação + Primeiro Container) | Deltaops

Você já ouviu “funciona na minha máquina” e precisou resolver por horas um problema que não existia no seu ambiente local? O Docker foi criado exatamente para eliminar esse problema. Neste guia, portanto, você vai aprender o que é Docker, como instalar em qualquer sistema operacional e como rodar seu primeiro container com comandos reais, do zero. O Que É Docker e Por Que Todo Dev Deveria Conhecer Docker é uma plataforma de conteinerização. Em outras palavras, ele permite empacotar uma aplicação com tudo que ela precisa. container. Pense assim: se você fosse mudar de cidade, não levaria só as chaves da sua casa nova. Você levaria tudo que precisa para funcionar — móveis, utensílios, roupas. O Docker faz exatamente isso com sua aplicação. A principal diferença em relação a uma máquina virtual (VM) é que a VM emula um

Leia mais

Git: Primeiros Passos com Controle de Versão

Git é um sistema de controle de versão distribuído amplamente utilizado por desenvolvedores de software. Ele permite que você acompanhe as alterações no seu código, colabore com outras pessoas e mantenha um histórico das modificações.

Leia mais

Docker: Removendo todos os recursos

Docker é uma ferramenta poderosa para o desenvolvimento e implantação de aplicativos, mas às vezes você pode acabar com muitos recursos Docker acumulados em seu sistema, ocupando espaço e gerando confusão. Neste post, vamos aprender como remover todos os recursos Docker de uma só vez.

Leia mais

Ansible: Estrutura de pastas de uma role – guia completo

No post anterior, criamos um primeiro playbook, onde basicamente colocamos as instruções em um arquivo e aplicamos esse playbook. Você ressalta que essa não é a melhor prática, especialmente quando se trata de tarefas mais complexas, como a instalação completa de algum software.

Leia mais

Monitoramento básico: combinação essencial de 4 ferramentas (Zabbix, Prometheus, Grafana e 1p)

No universo da infraestrutura, cloud e DevOps, existem diversas ferramentas que fazem basicamente as mesmas coisas. Quando o assunto é monitoramento e observabilidade, a quantidade de opções pode deixar qualquer iniciante confuso. Na minha experiência, vi clientes com stacks extremamente complexas e telas maravilhosas, mas que não conseguiam capturar o básico: disco cheio, CPU em 100%, expiração de certificado SSL. Por isso, escrevi este guia com uma combinação essencial para monitoramento básico – o feijão com arroz bem feito, integrado com a equipe de NOC. Vamos começar com o básico e, conforme a necessidade do negócio, evoluímos a stack. Para ficar mais didático, separei as sugestões entre infraestrutura on-premises e cloud-native. Resumo rápido: as 4 ferramentas essenciais Ferramenta Tipo Melhor para Integração Zabbix Monitoramento tradicional On-premises, servidores, redes, bancos de dados ✅ Grafana Prometheus Métricas time-series Cloud, Kubernetes, containers, microsserviços

Leia mais

Kubernetes: Criando seu cluster localmente com Kind

Neste tutorial, você vai aprender como criar um cluster Kubernetes local com Kind, uma ferramenta leve e gratuita. Se você quer se familiarizar com o Kubernetes sem custos de nuvem ou limitações de clusters temporários, o Kind é a solução ideal para desenvolvimento e testes. Esse ambiente pode ser usado como um “playground” para praticar as certificações CKA, CKAD e CKS do Kubernetes. Para isso, vamos utilizar o kind. Para saber mais sobre o kind, acesse o link abaixo. https://kind.sigs.k8s.io/ No meu caso estarei usando o Ubuntu 22.04. A instalação do Kind nessa distribuição é bastante simples. Instalando o Kind no Ubuntu Pré-requisitos: Docker, kubectl e Go Para utilizar o Kind, você precisará ter o Docker instalado e em execução. Caso você ainda não tenha o Docker instalado, você pode seguir as instruções no link abaixo: Instalar o kubectl na sua máquina local permitirá que você acesse o

Leia mais

Ansible: Primeiros Passos

Ansible é uma ferramenta de automação de infraestrutura e gerenciamento de configuração de Open Source. Ela permite que os administradores de sistema e desenvolvedores provisionem, configurem e gerenciem servidores, aplicativos e ambientes de maneira rápida e eficiente. Algumas das principais características do Ansible são: Conceitos básicos do Ansible Conceito Definição Host Servidor gerenciado pelo Ansible Group Conjunto de hosts com um atributo comum Inventory Arquivo que define hosts e grupos Module Unidade de código executada nos hosts remotos Task Ação que combina um módulo e seus argumentos Playbook Lista ordenada de tarefas em YAML Role Estrutura reutilizável para organizar código YAML: Um formato de dados popular e simples que é muito limpo e compreensível por humanos. Resumi bem o que é o Ansible e alguns conceitos e agora vamos pra prática e ver como a gente pode usar essa ferramenta. No meu caso estarei usando o Ubuntu

Leia mais

Docker: Algumas boas práticas para a criação de Dockerfiles

Dockerfiles são a base para a construção de imagens Docker, peça fundamental no desenvolvimento e implantação de aplicações containerizadas. Para criar Dockerfiles robustos, eficientes e fáceis de manter, é essencial seguir boas práticas. Neste guia, você vai aprender as principais boas práticas para Dockerfiles com exemplos práticos e comandos reais. 1- Minimize o número de camadas consolidando as instruções ❌ Evite: múltiplas camadas desnecessárias RUN apk updateRUN apk add curlRUN apk add vim ✅ Faça: consolide em uma única camada RUN apk update && \apk add curl && \apk add vim Cada instrução em um Dockerfile cria uma nova camada na imagem Docker. Quanto mais instruções, mais camadas – e isso impacta diretamente o desempenho, o tempo de build e o tamanho final da imagem. Por isso, o número de instruções deve ser reduzido ao mínimo possível. 2- Evite instalar pacotes desnecessários Uma das principais boas práticas

Leia mais

AER: Multiple Corrected error received

O seu disco rígido no Ubuntu encheu devido aos logs excessivos no syslog e no kernel, contendo essas informações. Jun 15 11:38:52 x99 kernel: pcieport 0000:00:03.0: AER: Multiple Corrected error received: id=0018 Jun 15 15:38:52 x99 kernel: pcieport 0000:00:03.0: PCIe Bus Error: severity=Corrected, type=Data Link Layer, id=0018(Receiver ID) Posso dar pelo menos alguns detalhes, embora não consiga explicar completamente o que acontece. Conforme descrito aqui , por exemplo , a CPU se comunica com o controlador de barramento PCIe por meio de pacotes da camada de transação (TLPs). O hardware detecta quando há falhas e o kernel do Linux relata isso como mensagens. A opção do kernel pci=nommconf desativa o espaço de configuração PCI mapeado em memória, que está disponível no Linux desde o kernel 2.6. Grosso modo, todos os dispositivos PCI possuem uma área que descreve esse dispositivo (que você vê com lspci -vv), e o método original para acessar essa área envolve

Leia mais