|
|
|
|
@ -21,12 +21,33 @@
|
|
|
|
|
echo FreeDMR Docker installer...
|
|
|
|
|
|
|
|
|
|
echo Installing required packages...
|
|
|
|
|
apt-get -y install docker.io &&
|
|
|
|
|
echo Install Docker Community Edition...
|
|
|
|
|
apt-get -y remove docker docker-engine docker.io &&
|
|
|
|
|
apt-get -y update &&
|
|
|
|
|
apt-get -y install apt-transport-https ca-certificates curl gnupg2 software-properties-common &&
|
|
|
|
|
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - &&
|
|
|
|
|
add-apt-repository \
|
|
|
|
|
"deb [arch=amd64] https://download.docker.com/linux/debian \
|
|
|
|
|
$(lsb_release -cs) \
|
|
|
|
|
stable" &&
|
|
|
|
|
apt-get -y update &&
|
|
|
|
|
apt-get -y install docker-ce &&
|
|
|
|
|
|
|
|
|
|
echo Install Docker Compose...
|
|
|
|
|
apt-get -y install docker-compose &&
|
|
|
|
|
apt-get -y install conntrack &&
|
|
|
|
|
|
|
|
|
|
echo Set userland-proxy to false...
|
|
|
|
|
echo '{ "userland-proxy": false}' > /etc/docker/daemon.json &&
|
|
|
|
|
cat <<EOF > /etc/docker/daemon.json &&
|
|
|
|
|
{
|
|
|
|
|
"userland-proxy": false,
|
|
|
|
|
"experimental": true,
|
|
|
|
|
"log-driver": "json-file",
|
|
|
|
|
"log-opts": {
|
|
|
|
|
"max-size": "10m",
|
|
|
|
|
"max-file": "3"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
EOF
|
|
|
|
|
|
|
|
|
|
echo Restart docker...
|
|
|
|
|
systemctl restart docker &&
|
|
|
|
|
@ -54,6 +75,8 @@ GEN_STAT_BRIDGES: True
|
|
|
|
|
ALLOW_NULL_PASSPHRASE: True
|
|
|
|
|
ANNOUNCEMENT_LANGUAGES:
|
|
|
|
|
SERVER_ID: 0
|
|
|
|
|
DATA_GATEWAY: False
|
|
|
|
|
VALIDATE_SERVER_IDS: True
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[REPORTS]
|
|
|
|
|
@ -63,8 +86,8 @@ REPORT_PORT: 4321
|
|
|
|
|
REPORT_CLIENTS: *
|
|
|
|
|
|
|
|
|
|
[LOGGER]
|
|
|
|
|
LOG_FILE: log/freedmr.log
|
|
|
|
|
LOG_HANDLERS: file-timed
|
|
|
|
|
LOG_FILE: /dev/null
|
|
|
|
|
LOG_HANDLERS: console-timed
|
|
|
|
|
LOG_LEVEL: INFO
|
|
|
|
|
LOG_NAME: FreeDMR
|
|
|
|
|
|
|
|
|
|
@ -74,21 +97,25 @@ PATH: ./json/
|
|
|
|
|
PEER_FILE: peer_ids.json
|
|
|
|
|
SUBSCRIBER_FILE: subscriber_ids.json
|
|
|
|
|
TGID_FILE: talkgroup_ids.json
|
|
|
|
|
PEER_URL: https://www.radioid.net/static/rptrs.json
|
|
|
|
|
SUBSCRIBER_URL: http://downloads.freedmr.uk/downloads/local_subscriber_ids.json
|
|
|
|
|
TGID_URL: TGID_URL: https://freedmr.cymru/talkgroups/talkgroup_ids_json.php
|
|
|
|
|
PEER_URL: http://freedmr-lh.gb7fr.org.uk/json/peer_ids.json
|
|
|
|
|
SUBSCRIBER_URL: http://freedmr-lh.gb7fr.org.uk/json/subscriber_ids.json
|
|
|
|
|
TGID_URL: http://freedmr-lh.gb7fr.org.uk/talkgroup_ids.json
|
|
|
|
|
LOCAL_SUBSCRIBER_FILE: local_subscriber_ids.json
|
|
|
|
|
STALE_DAYS: 1
|
|
|
|
|
LOCAL_SUBSCRIBER_FILE: local_subcriber_ids.json
|
|
|
|
|
SUB_MAP_FILE: sub_map.pkl
|
|
|
|
|
SERVER_ID_URL: http://freedmr-lh.gb7fr.org.uk/json/server_ids.tsv
|
|
|
|
|
SERVER_ID_FILE: server_ids.tsv
|
|
|
|
|
TOPO_FILE: topography.json
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[MYSQL]
|
|
|
|
|
USE_MYSQL: False
|
|
|
|
|
USER: hblink
|
|
|
|
|
PASS: mypassword
|
|
|
|
|
DB: hblink
|
|
|
|
|
SERVER: 127.0.0.1
|
|
|
|
|
PORT: 3306
|
|
|
|
|
TABLE: repeaters
|
|
|
|
|
#Control server shared allstar instance via dial / AMI
|
|
|
|
|
[ALLSTAR]
|
|
|
|
|
ENABLED: false
|
|
|
|
|
USER:admin
|
|
|
|
|
PASS: password
|
|
|
|
|
SERVER: asl.example.com
|
|
|
|
|
PORT: 5038
|
|
|
|
|
NODE: 11111
|
|
|
|
|
|
|
|
|
|
[OBP-TEST]
|
|
|
|
|
MODE: OPENBRIDGE
|
|
|
|
|
@ -132,6 +159,7 @@ ANNOUNCEMENT_LANGUAGE: en_GB
|
|
|
|
|
GENERATOR: 100
|
|
|
|
|
ALLOW_UNREG_ID: False
|
|
|
|
|
PROXY_CONTROL: True
|
|
|
|
|
OVERRIDE_IDENT_TG:
|
|
|
|
|
|
|
|
|
|
[ECHO]
|
|
|
|
|
MODE: PEER
|
|
|
|
|
@ -173,28 +201,24 @@ echo "BRIDGES = {'9990': [{'SYSTEM': 'ECHO', 'TS': 2, 'TGID': 9990, 'ACTIVE': Tr
|
|
|
|
|
echo Set perms on config directory...
|
|
|
|
|
chown -R 54000 /etc/freedmr &&
|
|
|
|
|
|
|
|
|
|
echo Setup logging...
|
|
|
|
|
mkdir -p /var/log/freedmr &&
|
|
|
|
|
touch /var/log/freedmr/freedmr.log &&
|
|
|
|
|
chown -R 54000 /var/log/freedmr &&
|
|
|
|
|
mkdir -p /var/log/FreeDMRmonitor &&
|
|
|
|
|
touch /var/log/FreeDMRmonitor/lastheard.log &&
|
|
|
|
|
touch /var/log/FreeDMRmonitor/hbmon.log &&
|
|
|
|
|
chown -R 54001 /var/log/FreeDMRmonitor &&
|
|
|
|
|
|
|
|
|
|
echo Get docker-compose.yml...
|
|
|
|
|
cd /etc/freedmr &&
|
|
|
|
|
curl https://gitlab.hacknix.net/hacknix/FreeDMR/-/raw/master/docker-configs/docker-compose.yml -o docker-compose.yml &&
|
|
|
|
|
echo Install crontab...
|
|
|
|
|
cat << EOF > /etc/cron.daily/lastheard
|
|
|
|
|
#!/bin/bash
|
|
|
|
|
mv /var/log/FreeDMRmonitor/lastheard.log /var/log/FreeDMRmonitor/lastheard.log.save
|
|
|
|
|
/usr/bin/tail -150 /var/log/FreeDMRmonitor/lastheard.log.save > /var/log/FreeDMRmonitor/lastheard.log
|
|
|
|
|
mv /var/log/FreeDMRmonitor/lastheard.log /var/log/FreeDMRmonitor/lastheard.log.save
|
|
|
|
|
/usr/bin/tail -150 /var/log/FreeDMRmonitor/lastheard.log.save > /var/log/FreeDMRmonitor/lastheard.log
|
|
|
|
|
EOF
|
|
|
|
|
|
|
|
|
|
chmod 755 /etc/cron.daily/lastheard
|
|
|
|
|
|
|
|
|
|
echo Tune network stack...
|
|
|
|
|
cat << EOF > /etc/sysctl.conf &&
|
|
|
|
|
net.core.rmem_default=134217728
|
|
|
|
|
net.core.rmem_max=134217728
|
|
|
|
|
net.core.wmem_max=134217728
|
|
|
|
|
net.core.rmem_default=134217728
|
|
|
|
|
net.core.netdev_max_backlog=250000
|
|
|
|
|
net.netfilter.nf_conntrack_udp_timeout=15
|
|
|
|
|
net.netfilter.nf_conntrack_udp_timeout_stream=35
|
|
|
|
|
EOF
|
|
|
|
|
|
|
|
|
|
/usr/sbin/sysctl -p &&
|
|
|
|
|
|
|
|
|
|
echo Run FreeDMR container...
|
|
|
|
|
docker-compose up -d
|
|
|
|
|
|