Skip to content

Collection of scripts that I use to deploy my personal home server, security system, NAS and k8s cluster.

Notifications You must be signed in to change notification settings

cralonsobcn/Server

Repository files navigation

Home Server

This public repo contains the scripts I use too set up my home server.

Although I deploy the services in a virtualized test environment first, I'm actively modifying the script in order to harden the security and automate the deployment in my production environment later.

For security reasons, I'm not commiting my .env files in this repo.

Virtualization

The test environment is a virtualized Rocky Linux running in Virtual Box bridged to the host machine. The production environment is a Beelink Mini S12 with an Intel N95, 8GB DDR4 and a 256GB SSD running Rocky Linux. alt text

Containerization

Docker is the container management application that runs all the apps of my home server.

Installation Steps are covered in the Rocky Linux documentation.

Docker Images

Almost all the images can be pulled from Docker Hub, linuxserver.io and github.com.

Server

NAS

Security

Deployment

As easy as typing in the command:

docker compose -f compose-file.yml up -d

Transcoding

Some media applications such as Jellyfin require hardware acceleration. This will improve CPU usage as the main load will be carried over by the iGPU.

Since the N95 is compatible with QSV, Docker needs to be aware of the render device associated with the iGPU.

The command ls -l /dev/dri will list the render devices and eventually, the render device needs to be added in the docker compose file as a device argument.

Example:

    devices:
      - /dev/dri:/dev/dri #let the application access the render and iGPU devices

TODO

  • Implement VPN.
  • Perform iperf3 tests on all the devices.
  • Migrate env passwords to secrets.
  • Implement 2FA and IAM with Authelia.
  • Implement ZFS.
  • Implement crontab to prune unused images and unused volumes.
  • Review the Networking diagram + validate and refine the firewall policies.

About

Collection of scripts that I use to deploy my personal home server, security system, NAS and k8s cluster.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published