/docker-systemimager

Run SystemImager NG in a Docker container

Primary LanguageShell

WORK IN PROGRESS

Images

  • theasp/systemimager:centos-8

Quick Start

Environment Variables

You can configure the generated configuration files by passing the following environment variables:

NameDefaultPurpose
SI_ADDRESS192.168.1.2Address of this server
SI_TMPFS_STAGINGnUse tmpfs staging: y or n
DHCP_SUBNET_ADDRESS192.168.1.0Subnet address
DHCP_SUBNET_NETMASK255.255.255.0Subnet netmask
DHCP_SUBNET_RANGE_START192.168.1.10Dynamic address start
DHCP_SUBNET_RANGE_END192.168.1.250Dynamic address end
DHCP_SUBNET_DOMAINDomain name
DHCP_SUBNET_GATEWAY192.168.1.1Gateway address
DHCP_BOOT_FILEpxelinux.0Filename to boot for PXE
HTTP_PORT8989Web server port

The only variable that will affect anything after the configuration files are generated is HTTP_PORT, you will need to edit the files manually to change any of them.

Docker Compose

Make a directory somewhere, and put this in docker-compose.yml, adjusting the values to match your network.

---
version: '3.7'

services:
   systemimager:
     image: theasp/systemimager:centos-8
     volumes:
       - data/etc_systemimager:/etc/systemimager
       - data/etc_dhcp:/etc/dhcp
       - data/var_lib_systemimager:/var/lib/systemimager
       - data/var_log:/var/log
     restart: always
     network_mode: host
     environment:
       SI_ADDRESS: 192.168.124.1
       SI_TMPFS_STAGING: "n"
       DHCP_SUBNET_ADDRESS: 192.168.124.0
       DHCP_SUBNET_NETMASK: 255.255.255.0
       DHCP_SUBNET_RANGE_START: 192.168.124.10
       DHCP_SUBNET_RANGE_END: 192.168.124.250
       DHCP_SUBNET_DOMAIN: systemimager.example.com
       DHCP_SUBNET_GATEWAY: 192.168.124.1
       DHCP_BOOT_FILE: pxelinux.0
       HTTP_PORT: 8989