netboot.xyz¶
netboot.xyz enables me to boot into many types of operating systems using lightweight tooling to get you up and running as soon as possible over my network.
Installation¶
Default Port: 3000
Config¶
homelab/docker/netbootxyz/compose.yaml
---
services:
netbootxyz:
image: ghcr.io/netbootxyz/netbootxyz:0.7.5-nbxyz1
container_name: netbootxyz
restart: unless-stopped
ports:
- "3000:3000" # Web configuration interface port
- "69:69/udp" # TFTP port
- "8080:80" # Optional, maps to NGINX_PORT
environment:
- MENU_VERSION=2.0.76 # Optional
- NGINX_PORT=80 # Optional
- WEB_APP_PORT=3000 # Optional
volumes:
- ./config:/config # Optional
- ./assets:/assets # Optional
Traefik¶
homelab/pve/traefik/conf.d/netbootxyz.yaml
---
http:
#region routers
routers:
netbootxyz:
entryPoints:
- "websecure"
rule: "Host(`netboot.l.nicholaswilde.io`)"
middlewares:
- default-headers@file
- https-redirectscheme@file
tls: {}
service: netbootxyz
#endregion
#region services
services:
netbootxyz:
loadBalancer:
servers:
- url: "http://192.168.1.222:3000"
passHostHeader: true
#endregion
middlewares:
https-redirectscheme:
redirectScheme:
scheme: https
permanent: true
default-headers:
headers:
frameDeny: true
browserXssFilter: true
contentTypeNosniff: true
forceSTSHeader: true
stsIncludeSubdomains: true
stsPreload: true
stsSeconds: 15552000
customFrameOptionsValue: SAMEORIGIN
customRequestHeaders:
X-Forwarded-Proto: https
default-whitelist:
ipAllowList:
sourceRange:
- "10.0.0.0/8"
- "192.168.0.0/16"
- "172.16.0.0/12"
secured:
chain:
middlewares:
- default-whitelist
- default-headers
Task List¶
task: Available tasks for this project:
* decrypt: Decrypt .env using SOPS
* encrypt: Encrypt .env using SOPS
* export: Export the task list
* init: Init
* mklinks: Make client symlinks
* restart: Restart Docker containers
* status: Status
* stop: Stop registry container
* up: Tun Docker compose in the foreground.
* up-d: Run Docker compose in the background.
* update: Update running containers
* upgrade: upgrade