Hola a todos!

Este es el primer post de muchos que vamos a publicar sobre uavlabs

Sobre este pequeño post, explicaremos el proceso de la implementacion de un Blog llamado Ghost, el cual esta funcionando sobre nuestra web.

Ghost es una poderosa herramienta open source, hackeable construida para realizar publicaciones de contenido modernos, Poderoso Blog.

  • Orientado a la publicación y gestión de contenido.
  • Editor optimizado.
  • Modular.

Entorno de pruebas

  • Host: raspberrypi/192.168.1.2.
  • Usuario: pi.
  • Raspbian 8.0.
  • SSH habilitado.
  • Nombre dominio: midominio.com
  • Puerto domino: 80

Pre-Instalación, configuración nodejs.

Accedemos a la raspberrypi via ssh.
$ ssh pi@raspberrypi.
nos autenticamos como root.
$ sudo su ó $ su root
accedemos al directorio "/opt/"
# cd /opt/
descargamos la ultima versión de node LST v4.8.0 del siguiente repositorio https://nodejs.org/dist/
# wget https://nodejs.org/dist/v4.8.0/node-v4.8.0.tar.gz
descomprimimos el archivo descargado sobre el directorio
# tar -xzvf node-v4.8.0.tar.gz
accedemos al directorio creado.
# cd node-v4.8.0
aplicamos el script de configuración
# ./configure
compilamos los fuentes con mayor prioridad y calculamos el tiempo de ejecución
# time nice -20 make .

Tiempo total para la ejecución

real 662m3.121s

user 450m40.640s

sys 16m28.560s

instalamos node
# make install
si la instalación es correcta, podemos verificar la versión de node instalada
# node -v

Instalación Ghost sobre raspberry pi.

sobre nuestro directorio de trabajo, descargamos la ultima versión de los repositorios https://github.com/TryGhost/Ghost/releases/
# curl -L https://github.com/TryGhost/Ghost/releases/download/0.11.5/Ghost-0.11.5.zip -o ghost.zip
movemos el archivo al directorio "/var/www" y lo descomprimimos sobre el mismo
# unzip -uo ghost.zip -d /var/www/ghost
Accedemos al directorio de trabajo, instalamos Ghost y calculamos el tiempo de la ejecucion
# cd /var/www/ghost && time npm install --production --unsafe-perm
copiamos el archivo de configuracion local
# cp config.example.js config.js
Editamos el archivo y configuramos sobre el perfil "production", el nombre del dominio, la dirección ip de el servidor y el puerto a escuchar HTTP:80, configurar los adecuados.
# vi config.js
Agregamos
production: {
url: 'midominio.com',
mail: {},
database: {
client: 'sqlite3',
connection: {
filename: path.join(__dirname, '/content/data/ghost.db')
},
debug: false
},
server: {
host: '192.168.1.2',
port: '80'
}
},

iniciamos el servidor
# npm start --production

Configuración entorno

configuramos en nuestro computador de trabajo local el nombre de dominio apuntando a la ip del servidor
sudo vi /etc/hosts
agregamos las siguientes lineas sobre el archivo
my-ghost-blog.com

abrimos un navegador de internet, en este caso firefox y accedemos al dominio
$ firefox http://my-ghost-blog.com &
si todo esta correcto, cargara nuestro blog personal.

para empezar con el accedemos al menu de configuracion
http://midominio.com/ghost, automaticamente nos direccionara a la creacion de la cuenta direccionandonos a http://midominio.com/ghost/setup/one/ creamos la cuenta y tendremos accedo a nuestro blog.

configurar servicio de correo...

dentro del directorio de trabajo de Ghost editamos el archivo de configuracion config.js
# cd /var/www/ghost/ && nano config.js
en el área de producción, editamos la función "mail:" y agregamos internamente los datos de conexion con Gmail
mail: {
transport: 'SMTP',
options: {
service: 'Gmail',
host: 'smtp.gmail.com',
port: 465,
secureConnection: true,
auth: {
user: 'usuario@dominio.com',
pass: 'Password',
}
}
},

Reiniciamos Ghost y nuestro servicio estará en linea :)

Un saludo a todos..