Skip to content
  • P
    Projects
  • G
    Groups
  • S
    Snippets
  • Help

yotta / pictogram

  • This project
    • Loading...
  • Sign in
Go to a project
  • Project
  • Repository
  • Issues 60
  • Merge Requests 0
  • Pipelines
  • Wiki
  • Settings
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Serverdoc

Serverdoc

Last edited by Arturo Montejo Ráez Feb 16, 2017
Page history

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

  Clone repository
  • 20170328_isabellemonfort
  • 20170328_luisballesteros
  • 20170328_luisperez
  • Apiaction
  • Apiadminvalid
  • Apiattribute
  • Apidevicevalid
  • Apienrolment
  • Apiinstructionresource
  • Apiinstructionvalid
  • Apilearningunitresource
  • Apimetamethodvalid
  • Apimethod
  • Apimethodresource
  • Apimethodvalid
More Pages
×

New Wiki Page

Tip: You can specify the full path for the new file. We will automatically create any missing directories.