Como criar uma imagem do Docker Elk e criar um contêiner do Docker

Como criar uma imagem do Docker Elk e criar um contêiner do Docker
Docker é uma das melhores tecnologias para virtualização e ambientes isolados para a criação de aplicativos.

Este tutorial mostrará como criar uma imagem do Docker que integra Elasticsearch, Kibana e Logstash. Você pode usar a imagem para implantar a pilha de alces em qualquer contêiner do Docker.

Começando

Para este guia, começaremos instalando e configurando o docker em um sistema. Depois de configurarmos o Docker, implantaremos um contêiner executando o Elasticsearch, Kibana e Logstash no mesmo sistema. Nesse recipiente, podemos ajustar e personalizar a pilha elástica de nossas necessidades.

Depois de termos a pilha de alces apropriada, exportaremos o contêiner do Docker para uma imagem que você pode usar para construir outros contêineres.

Etapa 1: Instale o Docker

A primeira coisa que precisamos fazer é instalar o docker em um sistema. Para este tutorial, estamos usando o Debian 10 como sistema base.

O primeiro passo é atualizar os pacotes APT usando o seguinte comando:

Atualização de sudo apt-get

Em seguida, precisamos instalar alguns pacotes que nos permitirão usar o APT sobre o HTTPS, o que podemos fazer usando o seguinte comando:

sudo apt-get install install-transport-https Certificados de CA Curl gnupg-agent-properties-common-common

A próxima etapa é adicionar a tecla GPG do repositório do Docker usando o comando:

CURL -FSSL https: // Download.Docker.com/linux/debian/gpg | Sudo Apt-Key Add -

A partir daí, precisamos adicionar o repositório do Docker ao APT usando o comando:

sudo add-propt-repository "deb [arch = amd64] https: // download.Docker.com/linux/debian $ (lsb_release -cs) estável "

Agora podemos atualizar o índice do pacote e instalar o Docker:

Atualização de sudo apt-get
sudo apt-get install docker-c docker-c-cli contêiner.io

Etapa 2: Puxando a imagem do Docker de Elk

Agora que temos o docker em funcionamento no sistema, precisamos puxar um recipiente do Docker contendo a pilha de alces.

Para esta ilustração, usaremos a imagem do Docker Elks disponível no Docker Registry.

Use o comando abaixo para puxar a imagem do Docker.

Sudo Docker Pull Sebp/Elk

Depois que a imagem for retirada com sucesso do registro do Docker, podemos criar um contêiner do Docker usando o comando:

Sudo Docker Run -P 5601: 5601 -P 9200: 9200 -P 5044: 5044 -T -Nome Elkstack Sebp/Elk

Depois de criar o contêiner, todos os serviços (Elasticsearch, Kibana e Logstash) serão iniciados automaticamente e expostos às portas acima.

Você pode acessar os serviços com os endereços

  • http: // localhost: 9200 - Elasticsearch
  • http: // localhost: 5601 - web kibana
  • http: // localhost: 5044 - Logstash

Etapa 3: Modificando o contêiner

Depois de funcionarmos em funcionamento no contêiner, podemos adicionar dados, modificar as configurações e personalizá -los para atender às nossas necessidades.

Por uma questão de simplicidade, adicionaremos dados de amostra da Web Kibana para testá -los.

Na página inicial principal de Kibana, selecione Experimente dados de amostra para importar amostra.

Escolha os dados para importar e clique em Adicionar dados

Agora que importamos e modificamos o contêiner, podemos exportá -lo para criar uma imagem de alce personalizada que podemos usar para qualquer imagem do Docker.

Etapa 4: Crie a imagem do Docker de Elk a partir do contêiner

Com todas as mudanças no contêiner de pilha elástica, podemos exportar o contêiner para uma imagem usando um único comando como:

Docker Commit C3F279D17E0A MyRepo/Elkstack: Version2

Usando o comando acima, criamos a imagem Elkstack com a Tag Version2 para o Docker Repository Myrepo. Isso salva todas as mudanças que fizemos do contêiner e você pode usá -lo para criar outros contêineres.

Conclusão

Este guia rápido e simples mostrou como criar uma imagem de alce personalizada para o docker com alterações. Para aqueles experientes com o Docker, você pode usar o Dockerfiles para realizar as mesmas tarefas, mas com mais complexidade.