Skip to content

Instantly share code, notes, and snippets.

@dougnukem
Last active August 24, 2017 01:56
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dougnukem/7036081 to your computer and use it in GitHub Desktop.
Save dougnukem/7036081 to your computer and use it in GitHub Desktop.
Ghost config.js for Heroku
// # Ghost Configuration
// Setup your Ghost install for various environments
var path = require('path'),
url = require('url'),
config;
config = {
// ### Development **(default)**
development: {
// The url to use when providing links to the site, E.g. in RSS and email.
url: 'http://my-ghost-blog.com',
// Example mail config
// Visit http://docs.ghost.org/mail for instructions
// ```
// mail: {
// transport: 'SMTP',
// options: {
// service: 'Mailgun',
// auth: {
// user: '', // mailgun username
// pass: '' // mailgun password
// }
// }
// },
// ```
/*
database: {
client: 'sqlite3',
connection: {
filename: path.join(__dirname, '/content/data/ghost-dev.db')
},
debug: false
},
*/
database: {
client: 'postgres',
connection: function() {
// DATABASE_URL = postgres://user:password@hostname.com:5432/dbName
var dbUrl = url.parse(process.env['DATABASE_URL']);
var auth = (dbUrl.auth || ':').split(':');
var user = auth[0];
var password = auth[1];
var host = dbUrl.hostname;
var port = dbUrl.port ? dbUrl.port : '5432'
var database = dbUrl.pathname ? dbUrl.pathname.slice(1) : null;
var config = {
host: host,
port: port,
user: user,
password: password,
database: database
};
return config;
}()
},
server: {
// Host to be passed to node's `net.Server#listen()`
host: '0.0.0.0',
// Port to be passed to node's `net.Server#listen()`, for iisnode set this to `process.env.PORT`
port: process.env.PORT
}
},
// ### Production
// When running Ghost in the wild, use the production environment
// Configure your URL and mail settings here
production: {
url: 'http://my-ghost-blog.com',
mail: {},
database: {
client: 'sqlite3',
connection: {
filename: path.join(__dirname, '/content/data/ghost.db')
},
debug: false
},
server: {
// Host to be passed to node's `net.Server#listen()`
host: '127.0.0.1',
// Port to be passed to node's `net.Server#listen()`, for iisnode set this to `process.env.PORT`
port: '2368'
}
},
// **Developers only need to edit below here**
// ### Testing
// Used when developing Ghost to run tests and check the health of Ghost
// Uses a different port number
testing: {
url: 'http://127.0.0.1:2369',
database: {
client: 'sqlite3',
connection: {
filename: path.join(__dirname, '/content/data/ghost-test.db')
}
},
server: {
host: '127.0.0.1',
port: '2369'
}
},
// ### Travis
// Automated testing run through Github
travis: {
url: 'http://127.0.0.1:2368',
database: {
client: 'sqlite3',
connection: {
filename: path.join(__dirname, '/content/data/ghost-travis.db')
}
},
server: {
host: '127.0.0.1',
port: '2368'
}
}
};
// Export config
module.exports = config;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment