Graphite + Grafana remote server
We will be running docker in rootless mode. (instruction for ubuntu 20.04)
sudo apt-get install ca-certificates curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo groupadd docker
sudo usermod -aG docker $USER
sudo systemctl disable --now docker.service docker.socket
dockerd-rootless-setuptool.sh install -f
Or just:
./install-docker.sh
cd
git init
git remote add origin [email protected]:j-kali/grafana-graphite
git pull origin master
systemctl --user daemon-reload
Also we need to allow certain port binds for non-root users
sudo sysctl net.ipv4.ip_unprivileged_port_start=80
sudo sh -c "echo 'net.ipv4.ip_unprivileged_port_start=80' >> /etc/sysctl.conf"
Before graphite and grafana can actually be run we need storage locations in:
/data/graphite/{conf,storage}
/data/grafana
For proper HTTPS
setup you need to define GRAFANA_DOMAIN
and DOMAIN_EMAIL
, e.g.,:
echo "GRAFANA_DOMAIN=$(curl ifconfig.io 2> /dev/null) | rev | cut -d " " -f 1 | tail -c +2 | rev" > ${HOME}/.config/environment.d/GRAFANA_DOMAIN.conf
echo "[email protected]" > ${HOME}/.config/environment.d/DOMAIN_EMAIL.conf
systemctl --user daemon-reload