# Como publico a minha aplicação MEAN?

https://www.seturack.com/pt/base-de-conhecimentos/artigo/how-do-i-deploy-my-mean-app

1. No painel, abra **Os meus servidores** e clique no seu servidor.
2. No separador **Resumo**, aguarde até a linha **Aplicação** indicar «MEAN está pronto». A página atualiza-se sozinha.
3. Abra a ligação na linha **Endereço do site**. Se a página de exemplo indicar `MongoDB: OK`, a aplicação está a alcançar a base de dados.

## Pastas

- `/home/app/uygulama/sunucu`: a aplicação Express (`server.js`). A cadeia de ligação está no ficheiro `.env` ao lado.
- `/home/app/uygulama/istemci`: o código-fonte Angular. A compilação grava na pasta `sunucu/public`.

## Alterar o código

[Ligue-se por SSH](https://www.seturack.com/pt/base-de-conhecimentos/artigo/how-to-connect-with-ssh) e execute:

`su - app`

`cd ~/uygulama`

Depois de copiar o seu código, reinicie a aplicação:

`pm2 restart uygulama`

A aplicação deve escutar na porta **3000**.

## MongoDB

O MongoDB só é acessível a partir do interior do servidor. As linhas **Utilizador** e **Palavra-passe** do painel correspondem à conta de administrador. Para se ligar a partir do seu computador, use um túnel SSH.

## O seu próprio domínio

1. Aponte o registo A do domínio para o endereço IP do servidor.
2. Como root, substitua o nome antigo em todo o lado: `sed -i 's/OLD_NAME/yourdomain.com/g' /etc/caddy/Caddyfile`. `OLD_NAME` é a parte a seguir a `https://` no endereço apresentado no painel.
3. Execute `systemctl reload caddy`.

O Caddy obtém e renova o certificado sozinho.

Apenas as portas **80**, **443** e **22** (para SSH) estão abertas ao exterior.

**Ainda sem servidor?** [Encomende um servidor com MEAN instalado](https://www.seturack.com/pt/mean-vps): escolhe o tamanho e paga apenas o que escolher.
