Una aventura con Ghost I: Instalando Ghost en un VPS con Nginx

Ghost logo

Hace unos días publiqué una entrada sobre cómo instalar Ghost de forma fácil con un script de instalación, hoy escribo esto para enseñar a instalarlo con Nginx y tu nombre de dominio. Sin más que decir, ¡empecemos con el tutorial!

Paquetes necesarios


Para instalar Ghost en VPS tenemos que conectarnos a él e instalar las dependencias, para ello necesitamos instalar lo siguiente:

# apt-get install build-essential automake make checkinstall dpatch patchutils autotools-dev debhelper quilt fakeroot xutils lintian cmake dh-make libtool autoconf git-core curl zip nginx

Esto instalará las dependencias para compilar NodeJS (requerido por Ghost), instalará Nginx y otras herramientas.

Compilando NodeJS


Para compilar NodeJS debemos bajar las fuentes:

wget http://nodejs.org/dist/node-latest.tar.gz

Ya hecho esto hay que descomprimirlas:

tar -xzf node-latest.tar.gz

Nos movemos al directorio donde se encuentra el código:

nodeversion=`ls | grep node`
cd $nodeversion

Compilamos e instalamos:

./configure
make -s
make install

¡Listo!

Instalación


Antes de configurar hay que instalarlo, ¿no? Aunque claro, no te asustes, ya no compilarás 🙂

Crea el directorio www y muévete a él:

Nota: Antes de empezar todo el tutorial ten en cuenta que tienes que desinstalar cualquier server que ocupe puerto 80, 8080 y la carpeta www, si la carpeta existe, elimínala.

mkdir -p /var/www
cd /var/www/

Descarga Ghost:

curl -L -O https://ghost.org/zip/ghost-latest.zip

Descomprime:

unzip -d ghost ghost-latest.zip
rm ghost.zip

Entra al directorio:

cd ghost/

Mueve todo a /var/www/:

mv /var/www/ghost/* /var/www/

Regresa a /var/www/:

cd /var/www/

Instala Ghost

/usr/local/bin/npm install --production

¡Bien! Ahora a configurar. 😀

Configuración

Editamos el archivo de configuración con el siguiente comando:

sed -e 's/127.0.0.1/0.0.0.0/' -e 's/my-ghost-blog.com/www.dominio.com/' -e 's/2368/8080/' config.js

Fácil, ¿no? Solo remplaza «dominio.com» por tu dominio, por ejemplo:

sed -e 's/127.0.0.1/0.0.0.0/' -e 's/my-ghost-blog.com/www.theworldofthegeek.com/' -e 's/2368/8080/' config.js

Podríamos hacerlo con nano (el editor GNU, no confundir con Nano de DesdeLinux :V), pero sería mas complicado y tendríamos que remplazar mucho (sí, mucho, como lo leíste) código, pero de esta forma que explique es más fácil :).

¡Pero recuerda que necesitamos que se encuentre en segundo plano! Para ello instalamos forever:

/usr/local/bin/npm install -g forever

Introducimos el siguiente comando (para iniciar Ghost debemos estar en el directorio de instalación (/var/www/)):

NODE_ENV=production forever start index.js

¡Ta dah! ¡En segundo plano!

Para parar, reiniciar o iniciar Ghost:

forever stop index.js
forever restart index.js
NODE_ENV=production forever start index.js

¡Listo! 😀

Configurando Nginx


¡Es hora de configurar Nginx!

Editaremos el archivo de configuración:

nano /etc/nginx/nginx.conf

Borraremos todo y pegaremos la siguiente configuración: http://paste.desdelinux.net/5034

Una vez con la nueva configuración, reemplaza la palabra «dominio» por tu nombre de dominio en las líneas 36, 38, 39 y 43.

Ahora reinicia Nginx

service nginx restart

¡Listo! 😀

Configurar el dominio


Entra a tu proveedor de dominios y edita el registro A (Host). Cambia la dirección IP a la que apunta por la de tu VPS, ¡y listo!

Notas Finales


Para acceder a la administración entra a www.dominio.com/ghost/ recuerda cambiar dominio por tu dominio. ¡Listo!, ya puedes acceder a tu dominio, empieza a publicar y instala un tema :), pero…

The World Of The Geek (yo) te regalo este tema para que lo instales, modifiques y disfrutes. 🙂

Solo tienes que bajarlo:

wget http://www.theworldofthegeek.com/files/TWOTGFlat.zip

Descomprimirlo:

unzip TWOTGFlat.zip

Y copiar el tema a tu Ghost

cp TWOTGFlat/ /var/www/content/themes

Ahora en la configuración de tu Ghost cambia el tema por el nuevo, ¡y listo!

Si tienes una duda o necesitas ayuda con Ghost, deja tus consultas en los comentarios o puedes contactarme en mi web.

¡Saludos! n.n/


16 comentarios, deja el tuyo

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   thalskarth dijo

    Buen tutorial, lo voy a probar en el VPS de «jugar», no tendrás un preview del tema para ver como es antes de bajarlo 😛

    1.    XTickXIvanX dijo

      Claro! http://www.theworldofthegeek.com/content/images/2014/Aug/Captura-de-pantalla-de-2014-08-09-17-04-57.png
      Solo hay que modificar el default.hbs (ya que tiene un error menor en el navbar) y el sidebar.hbs y listo!

      1.    thalskarth dijo

        Gracias!!

  2.   eliotime3000 dijo

    Interesante tutorial. Quizá, me dedique a migrar a Ghost, pero no sé cómo sería la gestión ahí (de hecho, si requiere acceso al VPS, como que sería algo incómodo).

    1.    XTickXIvanX dijo

      Hay herramientas para migrar a Ghost desde por ejemplo WordPress, es muy fácil de controlar, desde tusite.com/ghost accedes a la administración de Entradas, usuario y blog, lastimosamente no tiene soporte multiusuario (Pero sera agregado), pero con algunos Hacks al código se puede, aunque personalmente prefiero esperar las actualizaciones para no cometer errores, si tienes dudas pregúntame 🙂

      1.    eliotime3000 dijo

        Bueno, en cualquier caso, me gustaría probar la gestión multiusuario de Ghost.

      2.    XTickXIvanX dijo

        Y ya lo puedes hacer!
        Ghost ya soporta multiusuario 😀

  3.   Javier Madrid dijo

    Quisiera saber que ofrece ghost como plataforma o blogging que no ofrezcan otras. Lo han dado a conocer por aqui y también como instalar y configurar pero, no han mencionado por que usar ghost. Por ejemplo, actualmente WordPress creo que lleva la corona en este tipo de plataforma, la pregunta sería porque usar ghost y no wordpress? O se limita simplemente a ser una alternativa, solo eso?

    1.    Jorgicio dijo

      +1. Quisiera tener más información al respecto, porque es poco lo que se conoce de Ghost.

      Anduve mirando en mi hosting y me di cuenta que Softaculous lo ofrece para instalarlo, pero no le veo ventajas por sobre WordPress.

      Lo único que he visto, es que Ghost es más minimalista, quizás eso provea alguna ventaja sobre la carga del servidor.

      1.    XTickXIvanX dijo

        Realmente la carga del servidor es mucho mas rápida y gasta menos recursos

    2.    XTickXIvanX dijo

      Explicare eso en el próximo articulo 😉

  4.   raalso7 dijo

    Y una cosa que todovia no he comprendido… ¿Qué es Ghost? ¿Para un blog? ¿Para un dominio?…

    1.    elav dijo

      Para crear un blog

  5.   elav dijo

    Genial. Ahora solo faltan algunos pantallazos para ver como luce Ghost por fuera y por dentro

    1.    eliotime3000 dijo

      Eso mismo. Sólo unos cuántos pantallazos para ilustrar el procedimiento y todos contentos. #LOL.

    2.    XTickXIvanX dijo

      Hombre!, eso es lo próximo 😀