Адонис: Как подключиться с помощью SSL (с файлом certificate.crt) к MySQL? - PullRequest
0 голосов
/ 03 мая 2020

Я только что создал управляемую базу данных в Digital Ocean, для которой требуется соединение SSL. Как я могу сделать это с Адонисом?

1 Ответ

0 голосов
/ 03 мая 2020

Этот код работает для меня:

/**************************************************************************
 * IMPORTS
 ***************************************************************************/

// NPM
const fs = require('fs')

// Providers
const Env = use('Env')

/**************************************************************************
 * CONFIG > DATABASE
 ***************************************************************************/

const config = {
  connection: Env.get('DB_CONNECTION', 'mysql'),

  mysql: {
    client: 'mysql',

    connection: {
      host: Env.get('DB_HOST', 'localhost'),
      port: Env.get('DB_PORT', ''),
      user: Env.get('DB_USER', 'root'),
      password: Env.get('DB_PASSWORD', ''),
      database: Env.get('DB_DATABASE', 'adonis'),
    },

    debug: Env.get('DB_DEBUG', false),
  },
}

// Add certificate for production environment
if (Env.get('NODE_ENV') === 'production') {
  config.mysql.connection.ssl = {
    ca: fs.readFileSync(__dirname + '/certs/ca-database.crt'),
  }
}

module.exports = config
...