You will most likely need to have a persistent database and its good to have the credentials ready beforehand. So, some standard commands to create a MySQL database:
create database `www.site.com`;
GRANT USAGE on `www.site.com`.* to `ghost`@`%` IDENTIFIED BY "mypassword";
GRANT ALL PRIVILEGES on `www.site.com`.* to `ghost`@`%`;
Test database connection:
mysql -h dbhost.com --port=3306 -u ghost --password=mypassword
Create Your Node Service
Create new repository and run the following:
npm init
npm install --save ghost express
Add NodeJS Server
Add something to it to invoke Ghost from server.js
file:
var ghost = require('ghost'),
express = require('express'),
parentApp = express();
var options = {
config: require( 'path' ).join(__dirname, 'config.js')
};
ghost( options ).then(function (ghostServer) {
parentApp.use(ghostServer.config.paths.subdir, ghostServer.rootApp);
ghostServer.start(parentApp);
});
parentApp.on('mount', function() {
console.log( 'mounted' );
})
Run Server
Ghost will install DB on first run. To start server add something to package.json
like this:
PORT=8080 NODE_ENV=production node server.js
And then run npm start
.
Adding A Theme
Still figuring this one out..