Acceso a dev.yottacode.com
- IP: 52.57.26.163
- User: ubuntu
- Sistema: Ubuntu Linux 16.04 LTS
- Se accede mediante identificación por fichero de clave pública
Acceso a la máquina virtual en ararat
VM: 10.0.1.100 (uruk) en ararat.ujaen.es:
- SSH: sinai.ujaen.es:9522
- HTTP: sinai.ujaen.es:9580
- HTTPS: sinai.ujaen.es:9543
- Sails: sinai.ujaen.es:9537
Despliegue de la aplicación en el servidor de desarrollo
La aplicación debe funcionar con las siguientes restricciones:
- Accesible desde el exterior
- URL:
https://dev.yottacode.com
- Conexión por SSL
- Tolerante a fallos (si se para el servidor, debe relanzarse automáticamente)
Las operaciones de administración llevadas a cabo son las siguientes:
1) Modificamos en ararat el fichero /etc/apache/sites-available/yotta
para incluir el servidor virtual por puerto 443 (SSL) dev.yottacode.com
[...]
<VirtualHost *:443>
ServerName dev.yottacode.com
ServerAdmin amontejo@ujaen.es
ProxyRequests off
SSLEngine on
SSLCertificateFile /etc/ssl/certs/yottacode.com.crt
SSLCertificateKeyFile /etc/ssl/private/yottacode.com.key
ProxyPass / http://10.0.1.100:1337/
ProxyPassReverse / http://10.0.1.100:1337/
</VirtualHost>
[...]
Es ararat quien se encarga de la comunicación SSL, por lo que una vez que tengamos certificados oficiales (generados por una autoridad certificadora) bastará con modificar las lineas anteriores para que apunten a esos archivos.
2) Entramos en uruk y clonamos repositorio. Éste ha quedado en /var/www/pictogramdev
. Se añade a dicho directorio un .htaccess
con el contenido deny from all
para evitar que Apache sirva archivos (sólo deberían servirse desde Sails).
El resto de operaciones son sobre uruk.
3) Creamos un grupo pictogram y añadimos a aquellos usuarios que tengan que actualizar el código de la aplicación y relanzar la misma a dicho grupo (addgroup pictogram
, adduser amontejo pictogram
, adduser emblanco pictogram
4) Modificamos todos los permisos de pictogramdev
para que pertenezcan al grupo pictogram
y dicho grupo tenga permisos de escritura: chgrp -R pictogram pictogramdev
, chmod -R g+w pictogramdev
5) Creamos base de datos con PHPMyAdmin y damos permisos al usuario pictodbuser
para acceder a la misma (con la contraseña adecuada)
6) Lanzamos script pictogramdev/sails/conf/installdb.sh
para que se genera la base de datos
7) Recompilamos bcrypt desde pictogram/sails/src
con la orden npm install bcrypt
8) Installamos forever para poder lanzar Sails en background y tolerante a caídas (así se relanza cada vez que, por cualquier razón, el servidor node.js caiga): sudo npm installl -g forever
9) Lanzamos al aplicación con forever start app.js --debug
(no hace falta ser root, sólo usuario del grupo pictogram).
10) Probamos que todo funciona accediendo a https://dev.yottacode.com/app
Cómo reflejar cambios en el código en el servidor de desarrollo
1) Movemos assets/upload y assets/symbolstx a otro lugar
2) Actualizamos código git pull
3) Movemos los dos directorios indicados en 1) a su ubicación anterior
4) Aseguramos que la variable backend en sails/src/assets/app/js/config.js
apunta a https://dev.yottacode.com
5) Relanzamos aplicación desde pictogramdev/sails/src
con forever restart app.js --debug