# Desplegar Paginas

Esta es una guía particuluar para las páginas web de nuestros clientes de Armstrong.

# Conectarse al servidor
Luego de pedir acceso al servidor y tener configuradas las claves ssh ejecutar el comando

```bash
ssh root@72.61.221.163
```

El directorio más importante que vamos a encontrar en este servidor es `/opt/docker`. La estructura principal de este directorio es la siguiente
![](./image-1766604980219.png)
Dónde tenemos una base de datos core y un node proxy manager core.

# Crear una nueva página web

## Crear base de datos.
> [!CAUTION]
> La base de datos core_db es una versión antigua de MySQL ya que las páginas de Armstrong son viejas.
> No debería ser usada para nuevas técnologías.


Nos conectamos a la base de datos a través del comando
```bash 
docker exec -it core_db mysql -u root -p 
```
Creamos la base de datos, el usuario y le damos los permisos:
```sql
CREATE DATABASE db_name;
CREATE USER user_name@'%' IDENTIFIED BY user_password;
GRANT ALL PRIVILEGES ON db_name TO user_name@'%';
FLUSH PRIVILEGES;
```

## Crear el contenedor de la aplicación

Dentro del directorio `/opt/docker/sites` nos encontramos un `Plantilla.yml`, creamos la carpeta del proyecto:
```bash
mkdir {site}
mv Plantilla.yml {site}/docker-compose.yml
```
Dentro del `docker-compose.yml` modificamos las variables de entorno. 

Es muy importante que el contenedor este en la misma red que core_npm y core_db.

Finalmente corremos el comando
```bash
docker compose up -d
```

# Proceso de Proxy Inverso.

Primeramente, en el DNS que esté el dominio del sitio que estamos trabajando hay que modificar un registro A para que el FQDN apunte al servidor
*[FQDN]:Fully Qualified Domain Name

En este caso:
| Type | Name | Value |
| -------- | -------- | -------- |
| A     | @     |  72.61.221.163    |

Luego entramos al [Node Proxy Manager](https://npm.odoo.tera.coop.ar) del servidor y creamos el proxy, debe quedar algo así:

![](./image-1766606406619.png)
![](./image-1766606424814.png)
