All Projects → bucherfa → Server Setup

bucherfa / Server Setup

Home Server Setup

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Server Setup

dockerized
🐳 Build once, run anywhere
Stars: ✭ 70 (+18.64%)
Mutual labels:  docker-compose, grafana, bitwarden
silverbox
Guide describing how to setup compact, silent and energy-efficient GNU/Linux home server
Stars: ✭ 42 (-28.81%)
Mutual labels:  nextcloud, selfhosted
Aria2 Ariang X Docker Compose
Docker compose files for Aria2+ AriaNg+ filerun/ Nextcloud/ h5ai + Plex. 图形化BT,磁力,离线下载,文件管理,播放,投屏
Stars: ✭ 1,581 (+2579.66%)
Mutual labels:  nextcloud, docker-compose
Budibase
Budibase is an open-source low-code platform for creating internal apps in minutes. Supports PostgreSQL, MySQL, MSSQL, MongoDB, Rest API, Docker, K8s 🚀
Stars: ✭ 8,071 (+13579.66%)
Mutual labels:  selfhosted, docker-compose
Pi Hole Monitoring
Monitoring Pi-Hole statistics with Grafana
Stars: ✭ 196 (+232.2%)
Mutual labels:  grafana, docker-compose
Docker Traefik Prometheus
A Docker Swarm Stack for monitoring Traefik with Promethues and Grafana
Stars: ✭ 215 (+264.41%)
Mutual labels:  grafana, docker-compose
cv4pve-metrics
Metrics for Proxmox VE, Grafana with dasboard, InfluxDb
Stars: ✭ 38 (-35.59%)
Mutual labels:  docker-compose, grafana
Deck
🗂 Kanban-style project & personal management tool for Nextcloud, similar to Trello
Stars: ✭ 675 (+1044.07%)
Mutual labels:  selfhosted, nextcloud
Ohmyform
✏️ Free open source alternative to TypeForm, TellForm, or Google Forms ⛺
Stars: ✭ 1,065 (+1705.08%)
Mutual labels:  selfhosted, docker-compose
Prometheus
A docker-compose stack for Prometheus monitoring
Stars: ✭ 3,383 (+5633.9%)
Mutual labels:  grafana, docker-compose
Pingprom
Prometheus uptime monitoring quickstart
Stars: ✭ 107 (+81.36%)
Mutual labels:  grafana, docker-compose
Grafana Prometheus Node Js Example
Step-by-step tutorial on creating beautiful dashboards for your Node JS application
Stars: ✭ 47 (-20.34%)
Mutual labels:  grafana, docker-compose
Dockerize Your Dev
Docker compose a VM to get LetsEncrypt / NGINX proxy auto provisioning, ELK logging, Prometheus / Grafana monitoring, Portainer GUI, and more...
Stars: ✭ 61 (+3.39%)
Mutual labels:  grafana, docker-compose
Nextcloud Libreoffice Online
Docker configuration for Nextcloud with LibreOffice Online (plain http, no SSL support)
Stars: ✭ 92 (+55.93%)
Mutual labels:  nextcloud, docker-compose
Hastic Server
Hastic data management server for analyzing patterns and anomalies from Grafana
Stars: ✭ 292 (+394.92%)
Mutual labels:  selfhosted, grafana
Docker Compose Grafana Influxdb
Demonstration scripts for running Grafana with InfluxDB as datasource.
Stars: ✭ 29 (-50.85%)
Mutual labels:  grafana, docker-compose
Docker Flask Mongodb Example
Uses docker compose with a python flask microservice and MongoDB instance to make a sample application
Stars: ✭ 49 (-16.95%)
Mutual labels:  grafana, docker-compose
Django Channels React Multiplayer
turn based strategy game using django channels, redux, and react hooks
Stars: ✭ 52 (-11.86%)
Mutual labels:  docker-compose
Dotfiles
Windows + WSL 2 Ubuntu + Windows Terminal + zsh + p10k + Docker + IntelliJ IDEA
Stars: ✭ 54 (-8.47%)
Mutual labels:  docker-compose
Codar
✅ CODAR is a Framework built using PyTorch to analyze post (Text+Media) and predict Cyber Bullying and offensive content. 💬📷
Stars: ✭ 52 (-11.86%)
Mutual labels:  grafana

home server setup

basic setup

ubuntu

  • hardware only worked with ubuntu network installer
  • select Basic Ubuntu Server and OpenSSH server during installation in the Software selection section
  • encrypt hard drive

ssh

  • add ssh keys to server
  • disable login with password over ssh in /etc/ssh/sshd_config
  • reload ssh serivce sudo service ssh restart

docker setup

  • install some software
  • add ubuntu apt repo
  • install docker-ce and docker-compose
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"
sudo apt update
sudo apt install docker-ce
sudo apt install docker-compose
sudo usermod -aG docker $USER #logout and login after this

backup

The backup strategy heavily relies on borgmatic which in turn relies on Borg. Follow the steps below to set it up.

  • setup borg >=1.0.8 and rclone on a remote system
    • for borg on ubuntu you need to add an additional PPA
      sudo add-apt-repository ppa:costamagnagianfranco/borgbackup
      sudo apt update
      sudo apt install borgbackup
      
    • for rclone
      sudo apt install rclone
      # if the version is too old, install via generic install script from https://rclone.org/downloads/
      
  • setup rclone
    rclone config # and follow guided configuration
    # note: $NAME is used for rclone repo by default in backup.sh
    
  • connect to the remote system at least once via ssh from your host machine to add it to .ssh/know_hosts
  • create a folder on the remote system where the borgmatic repos should be initialized
  • adjust the .env accordingly
  • setup ssmtp for email notifications
    sudo apt install ssmtp
    # edit file /etc/ssmtp/ssmtp.conf and add the following content
    root=[email protected]
    mailhub=mail.domain.tld:587
    hostname=[email protected]
    FromLineOverride=YES
    UseSTARTTLS=YES
    AuthUser=[email protected]
    AuthPass=secret
    # edit file /etc/ssmtp/revaliases and add the following content
    root:[email protected]:mail.domain.tld:587
    user:[email protected]:mail.domain.tld:587
    # test your configuration
    echo "Hello World!" | ssmtp [email protected]
    
  • setup a cron job for the backup script
    crontab -e
    # insert the following line to the end of the file
    # it writes the output first into a log file and then sends the output to a given mail address
    0 4 * * * cd /path/to/setup && ./backup.sh >> ./.logs/$(date -u +"\%Y-\%m-\%dT\%H:\%M:\%SZ").log && cat ./.logs/$(ls -t ./.logs | head -n1) | /usr/sbin/ssmtp [email protected]
    

notes

fritz.box

  • blocks all domains mapped to local ip addresses by default

    to use domains in the local network add them to:

    Home Network > Home Network Overview > Network Settings > DNS Rebind Protection

hardware

PCPartPicker Part List

Type Item Price
CPU AMD Ryzen 5 3400G 3.7 GHz Quad-Core Processor Purchased For €149.89
CPU Cooler Noctua NH-L9a-AM4 33.84 CFM CPU Cooler Purchased For €41.10
Memory Crucial 8 GB (1 x 8 GB) DDR4-2666 Memory Purchased For €31.54
Memory Crucial 8 GB (1 x 8 GB) DDR4-2666 Memory Purchased For €31.54
Storage ADATA XPG SX6000 Pro 512 GB M.2-2280 NVME Solid State Drive Purchased For €78.90
Custom ASRock Deskmini A300 AMD - Case, Motherboard, Power Supply Purchased For €142.00
Total €474.97
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].