Development was only tested on Linux, any distribution should suffice. Please ensure you have the following installed:
Create the configuration folder with the following command:
sudo mkdir -p /etc/xbat
Copy all configuration files into this folder. The configuration files are located in the config folder of the repository.
sudo cp conf/xbat.conf conf/valkey.conf /etc/xbat
sudo cp conf/pgbouncer.ini.in /etc/xbat/pgbouncer.ini
Modify /etc/xbat/xbat.conf to connect to your remote xbat instance. Changes are only required for the [mongodb] and [questdb] sections.
Since PgBouncer is used to connect to QuestDB, changes are required in the /etc/xbat/pgbouncer.ini file. Modify the [databases] section to match your QuestDB configuration. Afterwards, create a userlist file with the command below. The user and password must match the credentials in the [pgbouncer] section of the /etc/xbat/xbat.conf file.:
echo echo '"<user>" "<password>"' | sudo tee /etc/xbat/userlists.txt > /dev/null
Analogous to the production deployment, a local user called xbat is required. Create this user with the command below. Due to the --system parameter, the user will not have a home directory and will be used for system purposes only. Additionally, the shell is set to /bin/false, which means this user cannot log in interactively.
sudo useradd --system --shell /bin/false xbat
sudo chown -R xbat:xbat /etc/xbat && sudo chmod 755 -R /etc/xbat