Cómo instalar Ghost 3.0 con nodejs en tu plan de alojamiento

26 de noviembre, 2019 @ 14:29 — 0 comentariosDescargar PDF

Esta guía está pensada para instalar Ghost 3.0 o superior en un plan de alojamiento de guebs.com. Aunque los principios generales son válidos para cualquier entorno, debes tener en consideración que los pasos específicos se adaptan a un plan de alojamiento creado en guebs.com.

Si tu plan es anterior en su fecha de creación  a noviembre de 2018, entonces es posible que todas las funcionalidades de Ghost no estén disponibles en tu plan. Es necesario que te pongas en contacto con nosotros para que migremos tu plan de plataforma, para que estas funcionalidades estén disponibles.

1 - Crear la aplicación desde el Panel de Hosting

Accede al panel de Hosting y luego pincha sobre el icono Aplicaciones NodeJs. Una vez allí rellena y envía el formulario, tal y como se ve en la siguiente imagen. Es recomendable elegir la última versión de NodeJs disponible:

Crear aplicación NodeJS

Ahora mismo Nodejs 12.x.x es la versión más moderna de la que podemos disponer, pero Ghost   recomiendo  la versión 10.x actualmente , por lo que es recomendable  elegir ésta, aunque se podría usar también la versión 12.

Debes tener en cuenta que tendrás que hacer uso de ssh para poner en marcha esta aplicación:

 

Como acceder vía SSH a tu cuenta

 

 

 

2 - Ubicar los archivos de Ghost e instalar las dependencias.

Al completar el paso anterior sabremos cual es el directorio de nuestra aplicación NodeJS. Supongamos que es /home/tuusuario/nodejs/miapp.

Ahora tenemos que acceder vía SSH al hosting e instalar ghost . Usaremos ghost-cli para hacer una instalación que luego usaremos. En primer lugar borramos el directorio de la aplicación actual y después lo instalamos.

npm install ghost-cli

Después hacemos la instalación, eliminando el directorio de la aplicación actual . Instalamos la última versión disponible de la rama 3, la versión 3.0.3

cd nodejs/

rm -Rf miapp
mkdir test; cd test/

~/node_modules/ghost-cli/bin/ghost install 3.0.3 local

 Checking system Node.js version
 Checking current folder permissions
 Checking memory availability
 Checking for latest Ghost version
 Setting up install directory
 Downloading and installing Ghost v3.0.3
 Finishing install process
 Configuring Ghost
 Setting up instance
 Starting Ghost

Ghost uses direct mail by default. To set up an alternative email method read our docs at https://ghost.org/docs/concepts/config/#mail

------------------------------------------------------------------------------

Ghost was installed successfully! To complete setup of your publication, visit:

http://localhost:2369/ghost/

 

Es imprescindible el siguiente paso.

## No olvidar

cp -a versions/3.0.3 ../miapp

Ahora ya tendremos si todo ha ido de modo exitoso, una instalacion de ghost dentro de miapp

cd ../miapp

ln -s index.js app.js ; ln -s core/server/public public

Hecho esto, y si has activado la visualización de errores para tu aplicación nodejs , entonces verás este error si llamas a tu dominio. Es lo esperado

 

NAME: DatabaseError
CODE: ER_ACCESS_DENIED_ERROR
MESSAGE: ER_ACCESS_DENIED_ERROR: Access denied for user 'root'@'localhost' (using password: NO)
level:normal
empty
"Unknown database error"
ERROR DETAILS:

3.- Configurar la base de datos : mysql

 

Importante: puedes elegir instalar Ghost con SqLite, ver punto 6

Ghost viene configurado de serie para ser configurado con mysql. Para ello, sólo debemos crear el archivo de configuración y posteriormente actualizarlo con los datos de nuestra base de datos.

Para ello hacemos lo siguiente desde la raíz de la aplicación

cp -a core/server/config/env/config.production.json ./

Editamos el archivo con las credenciales de la base de datos mysql, de modo que quedará algo parecido a lo siguiente:

{
"database": {
"client": "mysql",
"connection": {
"host" : "localhost",
"user" : "usuario",
"password" : "password",
"database" : "basedatos"
}
},
"paths": {
"contentPath": "content/"
},
"logging": {
"level": "info",
"rotation": {
"enabled": true
},
"transports": ["file", "stdout"]
}
}

 

4.- Editar la dirección web de tu sitio

El ghost instalado tiene por defecto localhost:xxxx como dirección por defecto de tu sitio web. Hay que cambiarlo para que refleje el dominio del sitio. Para ello tenemos que editar el archivo core/server/config/defaults.json. En la primera línea encontraremos el parámetro url, que debemos dejar como sigue:

"url": "http://tudominio.com",

 

 

5.- Creación del usuario inicial

Hecho esto, ya podemos acceder al administrador de ghost para crear el usuario inicial a través de https://www.tudominio.com/ghost/

 

 

6- Usar Sqlite  con Ghost

 

También es posible usar Sqlite en lugar  de Mysql. Si tu plan de alojamiento está aquí en guebs.com, te lo recomendamos. Para ello, sólo debes crea el archivo config.production.json como los has creado en el paso 5. Entonces debes dejarlos configurados con la cadena correspondiente a la dirección donde se archivará la base de datos sqlite:

config.production.json

{



"database": {
 "client": "sqlite3",
 "connection": {
 "filename": "content/data/miblog.db"
 }
 },

"paths": {
 "contentPath": "content/"
 },
 "logging": {
 "level": "info",
 "rotation": {
 "enabled": true
 },
 "transports": ["file", "stdout"]
 }
}

Hecho esto, tu sitio estará funcionando con Sqlite como motor de base de datos.

 

Guía actualizada el 26 de noviembre de 2019