mirror of
https://github.com/vdsm/virtual-dsm.git
synced 2026-08-28 20:06:05 +00:00
101 lines
4.4 KiB
Markdown
101 lines
4.4 KiB
Markdown
# Environment Variables
|
|
|
|
This page lists all the environment variables that can be used to configure the container.
|
|
|
|
An empty default means the variable is unset and its value is determined automatically when applicable.
|
|
|
|
## 💽 Virtual DSM
|
|
|
|
| Variable | Default | Description |
|
|
|---|---|---|
|
|
| `URL` | | URL or local path to a custom `.pat` installation file. |
|
|
| `COUNTRY` | | Country code used to select the Synology download mirror. |
|
|
| `HOST_MAC` | | MAC address reported to DSM. |
|
|
| `HOST_MODEL` | | Synology host model reported to DSM. |
|
|
| `HOST_SERIAL` | | Synology host serial number reported to DSM. |
|
|
| `GUEST_SERIAL` | | Synology guest serial number reported to DSM. |
|
|
|
|
## 🧠 CPU and Memory
|
|
|
|
| Variable | Default | Description |
|
|
|---|---|---|
|
|
| `CPU_CORES` | `2` | Number of virtual CPU cores, such as `4`, `half`, or `max`. |
|
|
| `CPU_MODEL` | `host` | QEMU CPU model. |
|
|
| `CPU_FLAGS` | | Additional QEMU CPU flags. |
|
|
| `HOST_CPU` | | CPU name reported to DSM. Selected automatically when unset. |
|
|
| `KVM` | `Y` | Enables KVM hardware acceleration. |
|
|
| `RAM_SIZE` | `2G` | Amount of RAM assigned to DSM, such as `2G`, `4G`, `half`, or `max`. |
|
|
| `RAM_CHECK` | `Y` | Checks whether enough host memory is available before starting DSM. |
|
|
|
|
## 💾 Storage
|
|
|
|
| Variable | Default | Description |
|
|
|---|---|---|
|
|
| `DISK_SIZE` | `256G` | Size of the main data disk. |
|
|
| `DISK_FMT` | `raw` | Disk image format: `raw` or `qcow2`. |
|
|
| `DISK_TYPE` | `scsi` | Disk device type, such as `sata`, `scsi`, `nvme`, or `blk`. |
|
|
| `DISK_CACHE` | `none` | Disk cache mode, such as `none` or `writeback`. |
|
|
| `DISK_IO` | `native` | Disk I/O mode, such as `native`, `threads`, or `io_uring`. |
|
|
| `DISK_DISCARD` | `unmap` | Discard/TRIM mode for the primary disk. |
|
|
| `DISK_ROTATION` | `1` | Rotation rate reported to the guest. Use `1` to identify the disk as an SSD. |
|
|
| `DISK_FLAGS` | | Additional options used when creating `qcow2` disks. |
|
|
| `DISK_OPTIONS` | | Additional options appended to QEMU disk devices. |
|
|
| `ALLOCATE` | `N` | Preallocates space for the data disks. |
|
|
| `STORAGE` | `/storage` | Storage directory used for disks, settings, and downloads. |
|
|
|
|
## 🌐 Networking
|
|
|
|
| Variable | Default | Description |
|
|
|---|---|---|
|
|
| `NETWORK` | | Network mode, such as `nat`, `user`, or `N` to disable networking. |
|
|
| `DHCP` | `N` | Enables macvtap networking so DSM receives a DHCP address. |
|
|
| `HOST` | | Hostname assigned to the machine on the network. |
|
|
| `IP` | | Overrides the automatically selected guest IPv4 address. |
|
|
| `MAC` | | Guest network adapter MAC address. |
|
|
| `ADAPTER` | `virtio-net-pci` | QEMU network adapter model. |
|
|
| `DEV` | `eth0` | Container network interface used as the uplink. |
|
|
| `MTU` | | MTU assigned to the guest network interface. |
|
|
| `MASK` | `255.255.255.0` | IPv4 netmask for guest network. |
|
|
| `TAP` | `dsm` | TAP or macvtap interface name. |
|
|
| `BRIDGE` | `docker` | Bridge name used for NAT networking. |
|
|
| `HOST_PORTS` | | Ports excluded from guest forwarding. |
|
|
| `USER_PORTS` | | Additional ports to forward to DSM when using user-mode networking. |
|
|
| `DNSMASQ_OPTS` | | Additional options passed to dnsmasq. |
|
|
| `DNSMASQ_DEBUG` | `N` | Enables dnsmasq debug output. |
|
|
| `DNSMASQ_DISABLE` | `N` | Disables the internal dnsmasq resolver. |
|
|
| `PASST_OPTS` | | Additional options passed to passt. |
|
|
| `PASST_DEBUG` | `N` | Enables passt debug output. |
|
|
|
|
## 🖥️ Display
|
|
|
|
| Variable | Default | Description |
|
|
|---|---|---|
|
|
| `DISPLAY` | `none` | Display backend, such as `vnc`, `disabled`, or `none`. |
|
|
| `LOSSY` | `N` | Enables lossy VNC compression to reduce bandwidth usage. |
|
|
| `VGA` | `none` | QEMU video adapter model. |
|
|
| `GPU` | `N` | Enables Intel iGPU acceleration. |
|
|
| `RENDERNODE` | `/dev/dri/renderD128` | Render node used for GPU acceleration. |
|
|
|
|
## ⚙️ System
|
|
|
|
| Variable | Default | Description |
|
|
|---|---|---|
|
|
| `MACHINE` | `q35` | QEMU machine type. |
|
|
| `ARGUMENTS` | | Additional raw arguments appended to the QEMU command line. |
|
|
|
|
## 🔌 Shutdown
|
|
|
|
| Variable | Default | Description |
|
|
|---|---|---|
|
|
| `SHUTDOWN` | `Y` | Enables graceful shutdown. |
|
|
| `TIMEOUT` | `115` | Maximum time, in seconds, to wait before forcing DSM to stop. |
|
|
| `API_TIMEOUT` | `90` | Maximum time, in seconds, to wait for the shutdown API call. |
|
|
|
|
## 🐞 Debugging
|
|
|
|
| Variable | Default | Description |
|
|
|---|---|---|
|
|
| `DEBUG` | `N` | Enables verbose debug output. |
|
|
| `TRACE` | `N` | Enables shell command tracing. |
|
|
| `HOST_DEBUG` | `N` | Enables debug output for the DSM host helper. |
|