|
| 1 | +# dstack Guest Image Tools: v0.5.10 |
| 2 | + |
| 3 | +This page lists command-line tools present in the production dstack guest image for this version. The image is minimal; many commands are BusyBox applets rather than full GNU/Linux utilities. |
| 4 | + |
| 5 | +## Image Metadata |
| 6 | + |
| 7 | +| Field | Value | |
| 8 | +|---|---| |
| 9 | +| Guest image version | `0.5.10` | |
| 10 | +| meta-dstack revision | `2f417559793345cb9760abd49004bca1e5d28581` | |
| 11 | +| Image flavor | `prod` | |
| 12 | + |
| 13 | +## Quick Availability Summary |
| 14 | + |
| 15 | +| Command | Available | Notes | |
| 16 | +|---|---:|---| |
| 17 | +| `nft` | yes | introduced in v0.5.10 | |
| 18 | +| `iptables` | yes | legacy backend (`xtables-legacy-multi`) when present | |
| 19 | +| `ip` | yes | BusyBox implementation, not full iproute2 | |
| 20 | +| `ifconfig` | yes | | |
| 21 | +| `route` | yes | | |
| 22 | +| `ping` | yes | | |
| 23 | +| `nslookup` | yes | | |
| 24 | +| `curl` | yes | | |
| 25 | +| `jq` | yes | | |
| 26 | +| `docker` | yes | | |
| 27 | +| `wg` | yes | | |
| 28 | +| `parted` | yes | introduced in v0.5.7 | |
| 29 | +| `sgdisk` | yes | introduced in v0.5.6 | |
| 30 | +| `rsync` | yes | introduced in v0.5.6.1 | |
| 31 | +| `python3` | yes | present in v0.5.10 due to nftables dependencies | |
| 32 | +| `sysbox-runc` | yes | introduced in v0.5.6.1 | |
| 33 | + |
| 34 | +## Commonly Requested Commands Not Present |
| 35 | + |
| 36 | +`bridge`, `conntrack`, `ethtool`, `ipset`, `ss`, `ssh`, `sshd`, `tc`, `tcpdump` |
| 37 | + |
| 38 | +## Versioned Tool Groups |
| 39 | + |
| 40 | +### BusyBox 1.36.1 |
| 41 | + |
| 42 | +These commands are BusyBox applets in this image. |
| 43 | + |
| 44 | +`[`, `[[`, `addgroup`, `adduser`, `ascii`, `ash`, `awk`, `base32`, `basename`, `bunzip2`, `busybox`, |
| 45 | +`bzcat`, `bzip2`, `cat`, `chgrp`, `chmod`, `chown`, `chroot`, `clear`, `cmp`, `cp`, `cpio`, `crc32`, |
| 46 | +`cut`, `date`, `dc`, `dd`, `delgroup`, `deluser`, `df`, `diff`, `dirname`, `dnsdomainname`, `du`, |
| 47 | +`dumpkmap`, `dumpleases`, `echo`, `egrep`, `env`, `expr`, `false`, `fbset`, `fgrep`, `find`, `free`, |
| 48 | +`fuser`, `grep`, `head`, `hostname`, `id`, `ifconfig`, `ifdown`, `ifup`, `ip`, `killall`, `less`, |
| 49 | +`ln`, `loadfont`, `loadkmap`, `logname`, `logread`, `ls`, `lspci`, `lsusb`, `lzcat`, `md5sum`, |
| 50 | +`mdev`, `microcom`, `mkdir`, `mkfifo`, `mknod`, `mktemp`, `mv`, `nc`, `netstat`, `nohup`, `nproc`, |
| 51 | +`nslookup`, `od`, `passwd`, `patch`, `pgrep`, `pidof`, `ping`, `ping6`, `printf`, `ps`, `pwd`, |
| 52 | +`rdate`, `readlink`, `realpath`, `reset`, `resize`, `rm`, `rmdir`, `route`, `run-parts`, `sed`, |
| 53 | +`seq`, `setconsole`, `sha1sum`, `sha256sum`, `shuf`, `sleep`, `sort`, `start-stop-daemon`, `stat`, |
| 54 | +`strings`, `stty`, `sync`, `sysctl`, `tail`, `tar`, `tee`, `telnet`, `test`, `tftp`, `time`, `top`, |
| 55 | +`touch`, `tr`, `traceroute`, `true`, `ts`, `tty`, `uname`, `uniq`, `unlink`, `unzip`, `uptime`, |
| 56 | +`users`, `usleep`, `vi`, `vlock`, `watch`, `wc`, `wget`, `which`, `who`, `whoami`, `xargs`, `xzcat`, |
| 57 | +`yes` |
| 58 | + |
| 59 | +### Bash 5.2.21 |
| 60 | + |
| 61 | +`bash`, `bash.bash`, `sh` |
| 62 | + |
| 63 | +### dstack guest components 0.5.10 |
| 64 | + |
| 65 | +`app-compose.sh`, `dstack-guest-agent`, `dstack-prepare.sh`, `dstack-util`, `wg-checker.sh` |
| 66 | + |
| 67 | +### curl 8.7.1 |
| 68 | + |
| 69 | +`curl` |
| 70 | + |
| 71 | +### jq 1.7.1 |
| 72 | + |
| 73 | +`jq` |
| 74 | + |
| 75 | +### OpenSSL 3.2.3 |
| 76 | + |
| 77 | +`openssl` |
| 78 | + |
| 79 | +### systemd 255.4 |
| 80 | + |
| 81 | +`bootctl`, `busctl`, `halt`, `hostnamectl`, `init`, `journalctl`, `localectl`, `mount.ddi`, |
| 82 | +`networkctl`, `poweroff`, `reboot`, `resolvconf`, `resolvectl`, `runlevel`, `shutdown`, `systemctl`, |
| 83 | +`systemd-ac-power`, `systemd-ask-password`, `systemd-cat`, `systemd-cgls`, `systemd-cgtop`, |
| 84 | +`systemd-creds`, `systemd-delta`, `systemd-detect-virt`, `systemd-dissect`, `systemd-escape`, |
| 85 | +`systemd-hwdb`, `systemd-id128`, `systemd-inhibit`, `systemd-machine-id-setup`, `systemd-mount`, |
| 86 | +`systemd-notify`, `systemd-path`, `systemd-resolve`, `systemd-run`, `systemd-socket-activate`, |
| 87 | +`systemd-stdio-bridge`, `systemd-sysusers`, `systemd-tmpfiles`, `systemd-umount`, `telinit`, |
| 88 | +`timedatectl`, `udevadm`, `udevd`, `userdbctl`, `varlinkctl` |
| 89 | + |
| 90 | +### chrony 4.5 |
| 91 | + |
| 92 | +`chronyc`, `chronyd` |
| 93 | + |
| 94 | +### Docker/Moby 25.0.3 + runc 1.1.12 |
| 95 | + |
| 96 | +`docker`, `docker-init`, `docker-proxy`, `docker-runc`, `dockerd` |
| 97 | + |
| 98 | +### containerd v2.0.0-beta.2-204-gb1624c362.m |
| 99 | + |
| 100 | +`containerd`, `containerd-ctr`, `containerd-shim-runc-v2`, `ctr`, `docker-containerd`, |
| 101 | +`docker-containerd-ctr` |
| 102 | + |
| 103 | +### runc 1.1.12+dev |
| 104 | + |
| 105 | +`runc` |
| 106 | + |
| 107 | +### wireguard-tools 1.0.20210914 |
| 108 | + |
| 109 | +`wg`, `wg-quick` |
| 110 | + |
| 111 | +### iptables 1.8.10 (legacy backend) |
| 112 | + |
| 113 | +The installed `iptables`, `iptables-save`, and `iptables-restore` commands use the legacy backend. `xtables-nft-multi` is not installed. |
| 114 | + |
| 115 | +`ip6tables`, `ip6tables-legacy`, `ip6tables-legacy-restore`, `ip6tables-legacy-save`, |
| 116 | +`ip6tables-restore`, `ip6tables-save`, `iptables`, `iptables-legacy`, `iptables-legacy-restore`, |
| 117 | +`iptables-legacy-save`, `iptables-restore`, `iptables-save`, `iptables-xml`, `xtables-legacy-multi` |
| 118 | + |
| 119 | +### nftables 1.0.9 |
| 120 | + |
| 121 | +`nft` |
| 122 | + |
| 123 | +### cryptsetup 2.7.2 |
| 124 | + |
| 125 | +`cryptsetup`, `cryptsetup-ssh`, `integritysetup`, `veritysetup` |
| 126 | + |
| 127 | +### OpenZFS 2.2.5 |
| 128 | + |
| 129 | +`arc_summary`, `arcstat`, `dbufstat`, `fsck.zfs`, `mpicalc`, `raidz_test`, `zdb`, `zed`, `zfs`, |
| 130 | +`zfs_ids_to_path`, `zgenhostid`, `zhack`, `zilstat`, `zinject`, `zpool`, `zstream`, `zstreamdump`, |
| 131 | +`ztest`, `zvol_wait` |
| 132 | + |
| 133 | +### util-linux 2.39.3 |
| 134 | + |
| 135 | +`addpart`, `blkdiscard`, `blkid`, `blkid.util-linux`, `blkpr`, `blkzone`, `blockdev`, |
| 136 | +`blockdev.util-linux`, `cal`, `cal.util-linux`, `cfdisk`, `chcpu`, `chmem`, `choom`, `chrt`, |
| 137 | +`chrt.util-linux`, `col`, `colcrt`, `colrm`, `column`, `ctrlaltdel`, `delpart`, `dmesg`, |
| 138 | +`dmesg.util-linux`, `eject`, `eject.util-linux`, `fadvise`, `fallocate`, `fallocate.util-linux`, |
| 139 | +`fcntl-lock`, `fdisk`, `fdisk.util-linux`, `fincore`, `findfs`, `findfs.util-linux`, `findmnt`, |
| 140 | +`flock`, `flock.util-linux`, `fsck`, `fsck.cramfs`, `fsck.util-linux`, `fsfreeze`, |
| 141 | +`fsfreeze.util-linux`, `fstrim`, `fstrim.util-linux`, `getopt`, `getopt.util-linux`, `hardlink`, |
| 142 | +`hexdump`, `hexdump.util-linux`, `hwclock`, `hwclock.util-linux`, `i386`, `ionice`, |
| 143 | +`ionice.util-linux`, `ipcmk`, `ipcrm`, `ipcrm.util-linux`, `ipcs`, `ipcs.util-linux`, `irqtop`, |
| 144 | +`isosize`, `kill`, `kill.util-linux`, `last`, `last.util-linux`, `lastb`, `lastb.util-linux`, |
| 145 | +`ldattach`, `linux32`, `linux64`, `logger`, `logger.util-linux`, `look`, `losetup`, |
| 146 | +`losetup.util-linux`, `lsblk`, `lscpu`, `lsfd`, `lsipc`, `lsirq`, `lslocks`, `lslogins`, `lsmem`, |
| 147 | +`lsns`, `mcookie`, `mcookie.util-linux`, `mesg`, `mesg.util-linux`, `mkfs`, `mkfs.cramfs`, `mkswap`, |
| 148 | +`mkswap.util-linux`, `more`, `more.util-linux`, `mount`, `mount.util-linux`, `mountpoint`, |
| 149 | +`mountpoint.util-linux`, `namei`, `nologin`, `nologin.util-linux`, `nsenter`, `nsenter.util-linux`, |
| 150 | +`partx`, `pipesz`, `pivot_root`, `pivot_root.util-linux`, `prlimit`, `prlimit.util-linux`, |
| 151 | +`readprofile`, `readprofile.util-linux`, `rename`, `renice`, `renice.util-linux`, `resizepart`, |
| 152 | +`rev`, `rev.util-linux`, `rfkill`, `rfkill.util-linux`, `rtcwake`, `rtcwake.util-linux`, `script`, |
| 153 | +`scriptlive`, `scriptreplay`, `scriptreplay.util-linux`, `setarch`, `setpriv`, `setpriv.util-linux`, |
| 154 | +`setsid`, `setsid.util-linux`, `setterm`, `sfdisk`, `sulogin`, `sulogin.util-linux`, `swaplabel`, |
| 155 | +`swapoff`, `swapoff.util-linux`, `swapon`, `swapon.util-linux`, `switch_root`, |
| 156 | +`switch_root.util-linux`, `taskset`, `taskset.util-linux`, `uclampset`, `ul`, `umount`, |
| 157 | +`umount.util-linux`, `uname26`, `unshare`, `unshare.util-linux`, `utmpdump`, `utmpdump.util-linux`, |
| 158 | +`uuidd`, `uuidgen`, `uuidgen.util-linux`, `uuidparse`, `waitpid`, `wall`, `wall.util-linux`, |
| 159 | +`wdctl`, `whereis`, `wipefs`, `write`, `x86_64`, `zramctl` |
| 160 | + |
| 161 | +### e2fsprogs 1.47.0 |
| 162 | + |
| 163 | +`badblocks`, `chattr`, `chattr.e2fsprogs`, `debugfs`, `dumpe2fs`, `e2freefrag`, `e2fsck`, `e2image`, |
| 164 | +`e2mmpstatus`, `e2undo`, `e4crypt`, `e4defrag`, `filefrag`, `fsck.ext2`, `fsck.ext3`, `fsck.ext4`, |
| 165 | +`logsave`, `lsattr`, `lsattr.e2fsprogs`, `mke2fs`, `mke2fs.e2fsprogs`, `mkfs.ext2`, |
| 166 | +`mkfs.ext2.e2fsprogs`, `mkfs.ext3`, `mkfs.ext4`, `mklost+found`, `populate-extfs.sh`, `resize2fs` |
| 167 | + |
| 168 | +### xfsprogs 6.6.0 |
| 169 | + |
| 170 | +`fsck.xfs`, `mkfs.xfs`, `xfs_admin`, `xfs_bmap`, `xfs_copy`, `xfs_db`, `xfs_estimate`, `xfs_freeze`, |
| 171 | +`xfs_fsr`, `xfs_growfs`, `xfs_info`, `xfs_io`, `xfs_logprint`, `xfs_mdrestore`, `xfs_metadump`, |
| 172 | +`xfs_mkfile`, `xfs_ncheck`, `xfs_quota`, `xfs_repair`, `xfs_rtcp`, `xfs_spaceman` |
| 173 | + |
| 174 | +### GPT fdisk 1.0.9 |
| 175 | + |
| 176 | +`fixparts`, `gdisk`, `sgdisk` |
| 177 | + |
| 178 | +### GNU parted 3.6 |
| 179 | + |
| 180 | +`parted`, `partprobe`, `partprobe.parted` |
| 181 | + |
| 182 | +### rsync 3.2.7 |
| 183 | + |
| 184 | +`rsync`, `rsync-ssl` |
| 185 | + |
| 186 | +### Sysbox 0.6.7 |
| 187 | + |
| 188 | +`sysbox-fs`, `sysbox-mgr`, `sysbox-runc` |
| 189 | + |
| 190 | +### fuse3 3.16.2 |
| 191 | + |
| 192 | +`fusermount`, `fusermount3`, `mount.fuse`, `mount.fuse3`, `ulockmgr_server` |
| 193 | + |
| 194 | +### pigz 2.8 |
| 195 | + |
| 196 | +`gunzip`, `gzip`, `pigz`, `pigzcat`, `unpigz`, `zcat` |
| 197 | + |
| 198 | +### kmod 31 |
| 199 | + |
| 200 | +`depmod`, `depmod.kmod`, `insmod`, `insmod.kmod`, `kmod`, `lsmod`, `lsmod.kmod`, `modinfo`, |
| 201 | +`modinfo.kmod`, `modprobe`, `modprobe.kmod`, `rmmod`, `rmmod.kmod` |
| 202 | + |
| 203 | +### kbd 2.6.4 |
| 204 | + |
| 205 | +`chvt`, `chvt.kbd`, `deallocvt`, `deallocvt.kbd`, `dumpkeys`, `fgconsole`, `fgconsole.kbd`, |
| 206 | +`getkeycodes`, `kbd_mode`, `kbdinfo`, `kbdrate`, `loadkeys`, `loadunimap`, `mapscrn`, `openvt`, |
| 207 | +`openvt.kbd`, `psfaddtable`, `psfgettable`, `psfstriptable`, `psfxtable`, `resizecons`, `setfont`, |
| 208 | +`setkeycodes`, `setleds`, `setmetamode`, `setvtrgb`, `showconsolefont`, `showkey`, `showkey.kbd`, |
| 209 | +`unicode_start`, `unicode_stop` |
| 210 | + |
| 211 | +### D-Bus 1.14.10 |
| 212 | + |
| 213 | +`dbus-cleanup-sockets`, `dbus-daemon`, `dbus-launch`, `dbus-monitor`, `dbus-run-session`, |
| 214 | +`dbus-send`, `dbus-update-activation-environment`, `dbus-uuidgen` |
| 215 | + |
| 216 | +### shadow 4.14.2 |
| 217 | + |
| 218 | +`faillock`, `groups`, `groups.shadow`, `login.shadow`, `mkhomedir_helper`, `newgrp`, |
| 219 | +`newgrp.shadow`, `pam_namespace_helper`, `pam_timestamp_check`, `pwhistory_helper`, `sg`, `su`, |
| 220 | +`su.shadow`, `unix_chkpwd`, `unix_update` |
| 221 | + |
| 222 | +### bridge-utils 1.7.1 |
| 223 | + |
| 224 | +`brctl`, `brctl.bridge-utils` |
| 225 | + |
| 226 | +### Python 3.12.6 |
| 227 | + |
| 228 | +`python3`, `python3.12` |
| 229 | + |
| 230 | +### device-mapper tools |
| 231 | + |
| 232 | +`dmsetup`, `dmstats` |
| 233 | + |
| 234 | +### libseccomp tools |
| 235 | + |
| 236 | +`scmp_sys_resolver` |
| 237 | + |
| 238 | +### ca-certificates |
| 239 | + |
| 240 | +`update-ca-certificates` |
| 241 | + |
| 242 | +### GnuPG helper |
| 243 | + |
| 244 | +`yat2m` |
| 245 | + |
| 246 | +### glibc 2.39 |
| 247 | + |
| 248 | +`ldconfig` |
| 249 | + |
| 250 | +### mount-copybind helper |
| 251 | + |
| 252 | +`mount-copybind` |
| 253 | + |
| 254 | +## Notes for Scripts |
| 255 | + |
| 256 | +- Prefer `command -v` checks for optional tools. |
| 257 | +- Treat BusyBox applets as BusyBox-compatible, not GNU-compatible. |
| 258 | +- Use `docker compose`, not the standalone `docker-compose` command. |
| 259 | +- For firewall scripts, assume legacy `iptables` unless you explicitly require `nft` and check for it at runtime. |
| 260 | +- Put application-specific tools in your container image instead of relying on the guest OS. |
0 commit comments