fix DB_URL (#2778)

pull/15/head
abcang 2017-05-04 22:53:44 +09:00 committed by Eugen Rochko
parent e95983f5df
commit 629a4d0fca
2 changed files with 24 additions and 10 deletions

View File

@ -2,7 +2,7 @@
# You may set REDIS_URL instead for more advanced options # You may set REDIS_URL instead for more advanced options
REDIS_HOST=redis REDIS_HOST=redis
REDIS_PORT=6379 REDIS_PORT=6379
# You may set DB_URL instead for more advanced options # You may set DATABASE_URL instead for more advanced options
DB_HOST=db DB_HOST=db
DB_USER=postgres DB_USER=postgres
DB_NAME=postgres DB_NAME=postgres

View File

@ -22,16 +22,30 @@ const dbUrlToConfig = (dbUrl) => {
} }
const params = url.parse(dbUrl) const params = url.parse(dbUrl)
const auth = params.auth ? params.auth.split(':') : [] const config = {}
return { if (params.auth) {
user: auth[0], [config.user, config.password] = params.auth.split(':')
password: auth[1],
host: params.hostname,
port: params.port,
database: params.pathname ? params.pathname.split('/')[1] : null,
ssl: true
} }
if (params.hostname) {
config.host = params.hostname
}
if (params.port) {
config.port = params.port
}
if (params.pathname) {
config.database = params.params.pathname.split('/')[1]
}
const ssl = params.query && params.query.ssl
if (ssl) {
config.ssl = ssl === 'true' || ssl === '1'
}
return config
} }
if (cluster.isMaster) { if (cluster.isMaster) {
@ -70,7 +84,7 @@ if (cluster.isMaster) {
} }
const app = express() const app = express()
const pgPool = new pg.Pool(Object.assign(dbUrlToConfig(process.env.DB_URL), pgConfigs[env])) const pgPool = new pg.Pool(Object.assign(pgConfigs[env], dbUrlToConfig(process.env.DATABASE_URL)))
const server = http.createServer(app) const server = http.createServer(app)
const wss = new WebSocket.Server({ server }) const wss = new WebSocket.Server({ server })