Docker

Como construir um aplicativo Nodejs no docker

Como construir um aplicativo Nodejs no docker
Docker se tornou um assunto quente de conversa hoje em dia, especialmente entre os desenvolvedores. Então, o que é docker? Docker é uma plataforma de código aberto que se baseia no kernel do Linux e permite que os desenvolvedores criem e implantem seus aplicativos em recipientes. Os contêineres fornecem um ambiente isolado para a execução de aplicativos e vêm empacotados com suas próprias bibliotecas, dependências e arquivos de configuração, que são essenciais para a implantação automática de aplicativos.

Neste guia, vamos mostrar como você pode construir um aplicativo NodeJS no docker. Você aprenderá como construir um aplicativo NodeJS de demonstração em seu servidor e posteriormente enviá-lo ao hub do Docker. Neste guia, estamos usando o Ubuntu 18.04 LTS para nosso ambiente de teste.

Então, por que alguém iria querer colocar seus aplicativos no docker? Como vimos antes, o Docker envia aplicativos em contêineres que agrupam bibliotecas e dependências. Isso constitui um ambiente completo para implantar seus aplicativos. Além disso, o constituinte do ambiente de desenvolvimento garante que o aplicativo funcionará da mesma maneira em muitos desenvolvedores e máquinas clientes.

Pré-requisitos para o desenvolvimento do NodeJS Docker

Este guia pressupõe que você tenha um conhecimento prático do Docker e também alguma familiaridade com a estrutura de um aplicativo NodeJS.

Antes de prosseguirmos, certifique-se de que o seguinte esteja instalado em seu ambiente de teste:

  1. Docker
  2. NodeJS e NPM

Vamos agora sujar as mãos.

Etapa 1: criar um nó.Aplicativo JS

Primeiro, comece criando um aplicativo NodeJS. Vamos criar um novo diretório e navegar dentro dele como mostrado.

$ mkdir mynode-app && cd mynode-app

Em seguida, use npm, abreviação de NodeJS Package Manager, para inicializar o diretório.

$ npm init

O comando cria um arquivo chamado pacote.json . Você será solicitado a fornecer detalhes do arquivo JSON, como nome, versão, descrição, palavras-chave e o autor, para mencionar apenas alguns.

No final digite sim para confirmar os detalhes preferidos do arquivo json.

Em seguida, adicione a estrutura expressa executando o comando:

$ Npm install express --save

Você deve obter uma saída conforme mostrado abaixo

Etapa 2: Criar um Nó.Aplicativo JS

Nesta etapa, precisamos criar os arquivos necessários para o aplicativo NodeJS. Vamos criar 2 arquivos de amostra da seguinte maneira:

  1. js
  2. html

Para o índice.js arquivo, copie e cole o conteúdo abaixo:

const express = require ('express')
const app = express ()
aplicativo.get ('/', (req, res) =>
res.sendFile ('$ __ dirname / index.html ')
)
aplicativo.ouvir (3000, () =>
console.log ('Ouvindo na porta 3000!')
)

O arquivo cria uma rota para o índice.arquivo html que vai escutar na porta 3000

Para o índice.arquivo html, cole a seguinte configuração



Olá! Bem-vindo ao meu aplicativo NodeJS



Agora estamos prontos para lançar o aplicativo NodeJS.

Etapa 3: execute o aplicativo NodeJS

Para iniciar o aplicativo, basta emitir o comando

índice de $ node.js

Pela saída, podemos ver que o aplicativo está escutando na porta 3000. Para confirmar isso, abra seu navegador e navegue pelo IP do seu servidor conforme mostrado

http: // endereço-ip: 3000

Etapa 4: encaixe o aplicativo NodeJS

Em seguida, vamos criar um arquivo Docker

$ touch dockerfile

Em seguida, cole a configuração abaixo

Nó FROM: carbono
WORKDIR / usr / src / app
COPIAR pacote *.json ./
EXECUTAR npm install
CÓPIA DE…
EXPOR 3000
CMD ["nó", "índice.js "]

Vamos decompô-lo:

A primeira linha mostra que pretendemos usar a versão mais recente do Node para construir nossa imagem. Nó.JS geralmente usa elementos químicos para nomear suas versões LTS no Node.

A segunda linha aponta para a criação do /usr / src / app diretório que irá acomodar o código do aplicativo na imagem.

As linhas 3 e 4 direcionam a cópia do pacote.arquivo json e a execução do npm install comando

CÓPIA DE… Isso empacota o aplicativo NodeJS - compreendendo os arquivos HTML e JS - na imagem do Docker.

EXPOR 3000 Isso define a porta que o aplicativo NodeJS usará

CMD [“nó”, “índice.js ”]  Isso exibe o comando que precisa ser executado para o aplicativo iniciar.

Etapa 5. Construa o Nó.Aplicativo JS

Depois de criar o arquivo Docker, vamos construir o aplicativo NodeJS usando o comando indicado abaixo. Faça questão de incluir um espaço e um ponto final no final, conforme mostrado. A opção -t nos ajuda a marcar a imagem para tornar mais fácil localizá-la quando executamos o imagens docker comando.

$ docker build -t mynode-app .

Para confirmar a existência da imagem, execute o comando:

imagens de $ docker

Etapa 6.  Executando o contêiner do docker

Com nossa imagem pronta, vamos iniciá-la usando o comando:

# docker run -p 8080: 3000 -d node-app

O comando direcionará o aplicativo para escutar na porta 8080 em vez da porta 3000. Para confirmar isso, abra seu navegador e navegue na URL do servidor conforme mostrado

http: // endereço-ip: 8080

Etapa 7.  Enviando o aplicativo para o hub do docker

Esta é a etapa final, pois já construímos nosso aplicativo e garantimos que tudo está funcionando conforme o esperado.

Antes de continuar, certifique-se de ter criado uma conta em hub docker

Em seguida, crie a imagem mais uma vez usando suas credenciais do Docker

# docker build -t [NOME DE USUÁRIO] / tag .

O nome de usuário é o nome de usuário de login do hub do docker e a tag é a tag do seu aplicativo. No meu caso, o comando será mostrado

# docker build -t jayarthur / mynode-app .

Agora faça login no hub do docker mostrado.

# login do docker

Forneça seu nome de usuário e senha e pressione ENTER

A única coisa que resta agora é enviar a imagem para o hub do docker. Para fazer isso, execute o comando:

# docker push jayarthur / mynode-app

Por fim, faça login em seu hub Docker e confirme a existência da imagem do aplicativo.

E isso nos traz o final deste tutorial. Sinta-se à vontade para enviar seus comentários. Obrigado.

Como alterar as configurações do mouse e touchpad usando Xinput no Linux
A maioria das distribuições Linux vem com a biblioteca “libinput” por padrão para lidar com eventos de entrada em um sistema. Ele pode processar event...
Remapeie os botões do mouse de maneira diferente para software diferente com o controle de botão do mouse X
Talvez você precise de uma ferramenta que possa fazer o controle do seu mouse mudar com cada aplicativo que você usa. Se for esse o caso, você pode ex...
Análise do mouse sem fio Microsoft Sculpt Touch
Recentemente li sobre o Microsoft Sculpt Touch mouse sem fio e decidi comprá-lo. Depois de usá-lo por um tempo, decidi compartilhar minha experiência ...