Skip to content

Subdomínios padronizados com HTTP/HTTPS para portas comuns #57

Description

@fititnt

TL;DR: As portas e domínios considerados são múltiplos de milhar de 2.000 a 9.000, exceto a 8080 e 8888. Os subdomínios "apa.etica.ai" são Alpha #17; os "apb.etica.ai" são Bravo #16, e os "lb-ap.etica.ai" Balanceamento de carga via Round-robin DNS #40

Portas

  • 2000
  • 3000
  • 4000
  • 5000
  • 6000
  • 7000
  • 8000
  • 8080 (oito, zero, oito, zero)
  • 8888 (oito oito oito oito)
  • 9000

Os servidores Servidores Águia Pescadora #5 (diferente de por exemplo fititnt/chatops-wg onde o uso/documentação foi docker) são máquinas virtuais comuns. Ou seja, mesmo quem não tem poder de sudo pode iniciar aplicações em qualquer porta acima de 1024 que não esteja sendo usada, como http://aguia-pescadora-bravo.etica.ai:12345

Como uma forma de adiantar trabalho para quem quer fazer testes rápidos e precisa ter um domínio HTTPS (ou que simplesmente o app que está testando força ser acessível apenas via localhost) nós já deixamos configurado subdomínios para as portas mais comuns usadas em desenvolvimento.

Por exemplo, uma pessoa que que dê use o seguinte código da documentação oficial do NodeJS:

// https://nodejs.org/en/docs/guides/getting-started-guide/
const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

e salvar em um arquivo app.js e então rodar por terminal com nodejs app.js você imediatamente https://3000.apa.etica.ai/ ou https://3000.apa.etica.ai/ e o Load Balancer http://3000.lb-ap.etica.ai.

O que fazer depois?

Caso você queira deixar seu app hospedado de fato em um ou mais dos servidores da A.P, recomendamos:

  • Aponte um domínio ou subdomínio para UMA, e apenas UMA, das seguintes opções a seguir
    • CNAME aguia-pescadora-alpha.etica.ai TTL 15min
      • Caso seu app esteja na aguia-pescadora-alpha.etica.ai
    • CNAME aguia-pescadora-bravo.etica.ai TTL 15min
      • Caso seu app esteja na aguia-pescadora-bravo.etica.ai
    • CNAME lb-ap.etica.ai TTL 2min (ou o mais baixo que puder, como 30s)
      • Caso seu app esteja em dos os servidores aguia-pescadora
      • Dica:
        • a gente pode procurar deixar bancos de dados e afins nos Servidores em cluster Elefante Bornéu Servidores em cluster Elefante Bornéu #45
        • Você pode escolher um dos seus servidores como "principal" (que envia alterações de código) e (seja manualmente, ou via script que vê quando tem alteração no disco) um rsync envia alterações para os outros servidores.
          • Sim, é possível implementar GlusterFS ou afins, mas mas a performance não é tão alta principalmente se comparado com Redis Redis #51 ou um Memcached.
  • Caso você não tenha um domínio, podemos criar um subdomínio.
  • Seu app (para ficar rodando por períodos maiores) idealmente deve ser movido para alguma outra porta interna, visto que esses domínios ainda continuariam acessando seu app mesmo com uma URL dedicada se a porta não for trocada!

HTTP/HTTPS para portas padrões

Essa lista foi colocada aqui para facilitar quem quer clicar rápido e ver quais portas estão livres.


Edições

  1. Adicionado lista de URls e TL;DR
  2. Melhorada descrição longa de como usar os domínios comuns

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    mvp-okUm produto mínimo viável desse issue já foi instalado em pelo menos um servidorserver-aguia-pescadoraServidor(es): aguia-pescadora.etica.ai

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions