homelab Docker & Self-Hosted Deployment

GitHub

Fully automated homelab from empty disk to running services with a single command.

9,222 stars Python Python 1 file ยท ~5,796 tokens #ansible#argocd#devops#docker#fedora#gitops#helm#home-operations
RAW Compose
1. Pull Image (DOCKERHUB) docker pull khuedoan/homelab
2. Docker Run (1-Click Launch) docker run -d --name homelab --restart always khuedoan/homelab:latest
3. Podman Run podman run -d --name homelab --restart always khuedoan/homelab:latest
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://docker.io/khuedoan/homelab:latest
5. ORAS Pull (OCI Artifact) oras pull khuedoan/homelab:latest
6. Compose Deployment docker compose up -d
metal/roles/pxe_server/files/docker-compose.yml
Download .yml
services:
  dnsmasq:
    build: ./dnsmasq
    volumes:
      - ./data/pxe-config/dnsmasq.conf:/etc/dnsmasq.conf
      - ./data/pxe-config/grub.cfg:/tftp/grub.cfg
      - ./data/os/EFI/BOOT/grubx64.efi:/tftp/grubx64.efi
      - ./data/os/images/pxeboot/initrd.img:/tftp/initrd.img
      - ./data/os/images/pxeboot/vmlinuz:/tftp/vmlinuz
    network_mode: host
    cap_add:
      - NET_ADMIN
  http:
    build: ./http
    network_mode: host
    volumes:
      - ./data/os:/usr/share/nginx/html/os
      - ./data/init-config/:/usr/share/nginx/html/init-config
    environment:
      NGINX_PORT: 80