72 lines
1.6 KiB
Markdown
72 lines
1.6 KiB
Markdown
# [greenlock-store-sequelize](https://git.rootprojects.org/root/greenlock-store-sequelize.js) | A [Root](https://rootprojects.org) project
|
|
|
|
> A database-driven Greenlock storage plugin with wildcard support.
|
|
|
|
## Usage
|
|
|
|
To use, provide this Greenlock storage plugin as the `store` attribute when you
|
|
invoke `create`.
|
|
|
|
```js
|
|
greenlock.create({
|
|
store: require('le-store-sequelize')
|
|
});
|
|
```
|
|
|
|
## Configuration
|
|
|
|
### Defaults
|
|
|
|
No configuration is required. By default, you'll get a baked-in Sequelize
|
|
database running [sqlite3](https://www.npmjs.com/package/sqlite3).
|
|
|
|
### Database Connection
|
|
|
|
Without `config.dbOptions`, the baked-in sequelize object uses sqlite3 with
|
|
defaults. If `config.dbOptions` is provided, you can configure the database
|
|
connection per the Sequelize documentation.
|
|
|
|
If a dialect other than sqlite3 is used, dependencies will need to be
|
|
installed.
|
|
|
|
```javascript
|
|
greenlock.create({
|
|
store: require('le-store-sequelize')({
|
|
dbConfig: {
|
|
username: 'mysqluser',
|
|
password: 'mysqlpassword',
|
|
database: 'mysqldatabase,
|
|
host: '127.0.0.1',
|
|
dialect: 'mysql'
|
|
}
|
|
})
|
|
});
|
|
```
|
|
|
|
The database can also be configured using an env variable.
|
|
|
|
```javascript
|
|
greenlock.create({
|
|
store: require('greenlock-store-sequelize')({
|
|
dbConfig: {
|
|
use_env_variable: 'DB_URL'
|
|
}
|
|
})
|
|
});
|
|
```
|
|
|
|
### Custom Database Object
|
|
|
|
If you already have a Sequelize object, you can pass that in as `config.db`,
|
|
circumventing the baked-in database entirely.
|
|
|
|
```javascript
|
|
var db = require('./db'); // your db
|
|
|
|
greenlock.create({
|
|
store: require('le-store-sequelize')({
|
|
db
|
|
})
|
|
});
|
|
```
|