From 23bbef688b1b3fc7d43e44e4ceb915fcedd1132c Mon Sep 17 00:00:00 2001 From: Mael GRAMAIN Date: Tue, 22 Dec 2020 21:25:23 -0400 Subject: [PATCH] Updated readme --- README.md | 51 +++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 47 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index ab36dd4..46f768f 100644 --- a/README.md +++ b/README.md @@ -10,10 +10,53 @@ This software requires a SQL server and a Redis server. This software is currently in development and NOT ready for production. -## Initialization -- Move ``./extra/config.ini.example`` to ``./config.ini`` and edit it. -- Import to your configured database the SQL structure dump from ``./extra/db.sql`` -- ``make build`` +## Installation + +### Automated install +Each release contains a RPM and DEB package. +- [Download the latest package](https://github.com/outout14/sacrebleu-dns/releases/latest) compatible with your system +- Edit the config file in ``/etc/sacrebleu/config-dns.ini`` +- Launch the database migration with ``sacrebleu-dns -sqlmigrate -config /etc/sacrebleu/config-dns.ini`` +- Start the service ``systemctl start sacrebleu-dns`` + +### Manual Install +- [Download the latest release](https://github.com/outout14/sacrebleu-dns/releases/latest) compatible with your system +- [Download](https://raw.githubusercontent.com/outout14/sacrebleu-dns/main/extra/config.ini.example) and edit the configuration file +- Launch the database migration with ``sacrebleu-dns -sqlmigrate -config [config path].ini`` +- [Download](https://raw.githubusercontent.com/outout14/sacrebleu-dns/main/extra/sacrebleu-dns.service) and edit the systemd service and put it in ``/lib/systemd/system/`` +- Start the service ``systemctl start sacrebleu-dns`` + +## Arguments +You can show theses informations using ``./sacrebleu-dns -h``. +``` + -config string + the patch to the config file (default "extra/config.ini.example") + -sqlmigrate + initialize / migrate the database +``` + +## Configuration +Variables names are case sensitives. +|Variable name|Type|Example|Informations| +|--|--|--|--| +| AppMode | string|``"production"``|Anything different than ``production`` will show debug messages +| App | Section | +|IP|string|``":"``|IP address on which the DNS server must listen. Blank to listen on all IPs +|Port|int|``5353``|Port on which the DNS server must listen +|Logfile|bool|``true``|Enable or disable file logs. +|Database|Section| +|IP|string|``"127.0.0.1"``|SQL Database IP +|Username|string|``"sacrebleu"``|SQL Database Username +|Password|string|``"superSecretPassword"``|SQL Database Password +|Port|string|``"5432"``|SQL Database port (``"5432"`` for postgres or ``"3306"`` for MySQL by default) +|Db|string|``"sacrebleudatabase"``|SQL Database Name +|Type|string|``"postgresql"``|SQL Database type. ``"postgresql"`` or ``"mysql"`` (anything different than ``"postgresql"`` will rollback to ``"mysql"`` +|Redis|Section +|IP|string|``"127.0.0.1"``|Redis Database IP +|Password|string|``""``|Redis Database Password +|Port|int|``6379``|Redis Database port +|Db|int|``0``|Redis Database ID +|Ttl|int|``10``|Redis Time To Live (in seconds) ## What is working - Read records (stricts & wildcard) from MySQL