2014-07-30 20:15:16 +00:00
|
|
|
discosrv
|
|
|
|
========
|
|
|
|
|
2014-08-20 10:22:23 +00:00
|
|
|
[![Latest Build](http://img.shields.io/jenkins/s/http/build.syncthing.net/discosrv.svg?style=flat-square)](http://build.syncthing.net/job/discosrv/lastBuild/)
|
2014-07-31 10:37:18 +00:00
|
|
|
|
2014-07-30 20:15:16 +00:00
|
|
|
This is the global discovery server for the `syncthing` project.
|
|
|
|
|
2015-03-25 07:16:52 +00:00
|
|
|
To get it, run `go get github.com/syncthing/discosrv` or download the
|
|
|
|
[latest build](http://build.syncthing.net/job/discosrv/lastSuccessfulBuild/artifact/)
|
|
|
|
from the build server.
|
2014-07-30 20:15:16 +00:00
|
|
|
|
2015-03-25 07:16:52 +00:00
|
|
|
Usage
|
|
|
|
-----
|
2014-08-02 07:03:38 +00:00
|
|
|
|
2015-07-21 22:56:27 +00:00
|
|
|
The discovery server supports `ql` and `postgres` backends.
|
|
|
|
Specify the backend via `-db-backend` and the database DSN via `-db-dsn`.
|
|
|
|
|
|
|
|
By default it will use in-memory `ql` backend. If you wish to persist the
|
|
|
|
information on disk between restarts in `ql`, specify a file DSN:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ discosrv -db-dsn="file://var/run/discosrv.db"
|
|
|
|
```
|
|
|
|
|
|
|
|
For `postgres`, you will need to create a database and a user with permissions
|
|
|
|
to create tables in it, then start the discosrv as follows:
|
2015-03-25 07:16:52 +00:00
|
|
|
|
|
|
|
```bash
|
2015-07-21 22:56:27 +00:00
|
|
|
$ export DISCOSRV_DB_DSN="postgres://user:password@localhost/databasename"
|
|
|
|
$ discosrv -db-backend="postgres"
|
2015-03-25 07:16:52 +00:00
|
|
|
```
|
|
|
|
|
2015-07-21 22:56:27 +00:00
|
|
|
You can pass the DSN as command line option, but the value what you pass in will
|
|
|
|
be visible in most process managers, potentially exposing the database password
|
|
|
|
to other users.
|
|
|
|
|
|
|
|
In all cases, the appropriate tables and indexes will be created at first
|
|
|
|
startup. If it doesn't exit with an error, you're fine.
|
2015-03-25 07:16:52 +00:00
|
|
|
|
|
|
|
See `discosrv -help` for other options.
|