Build a Linux Image
For most Linux distributions, we recommend starting from an official cloud image rather than installing the operating system from an ISO.
Cloud images already include cloud-init and are optimized for virtualized environments.
Recommended Distributions
Official cloud images are available for many popular distributions:
- Ubuntu
- Debian
- AlmaLinux
- Rocky Linux
- Fedora
- openSUSE
Workflow
Download Cloud Image
↓
Customize (Optional)
↓
Convert to RAW
↓
Compress
↓
Upload
↓
Use URL in Custom ProfileDownload a Cloud Image
Example (Ubuntu 24.04):
wget https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.imgMost cloud images are provided in QCOW2 format.
Customize the Image (Optional)
If you need additional software, you can boot the image in a virtual machine and make your changes.
Common customizations include:
- Installing packages
- Creating users
- Configuring services
- Adding application files
When customization is complete, shut down the virtual machine cleanly.
Convert to RAW
Convert the image to RAW format:
qemu-img convert \
-O raw \
noble-server-cloudimg-amd64.img \
ubuntu.rawCompress the Image
We recommend Zstandard compression:
zstd -19 ubuntu.rawThis produces:
ubuntu.raw.zstUpload the Image
Upload the compressed image to a location accessible via HTTP or HTTPS.
Examples:
- S3-compatible storage
- Cloudflare R2
- GitHub Releases
- Web servers
- CDN providers
The resulting URL can be used directly in a Custom Profile.
Example:
https://example.com/images/ubuntu.raw.zstAlternative: Build from an ISO
If a cloud image is not available for your distribution, you can install the operating system from an ISO.
Requirements
- cloud-init must be installed
- the system must boot successfully
- shut down the virtual machine before capturing the image
No additional cloud-init configuration is required. TinyInstaller automatically configures cloud-init during deployment.
After installation:
- Shut down the virtual machine.
- Convert the disk to RAW format.
- Compress the RAW image.
- Upload the image and use its URL in your Custom Profile.
Notes
For the best compatibility and deployment speed:
- Prefer official cloud images whenever possible.
- Use RAW images compressed with Zstandard (
.raw.zst). - Compressed images are supported only for RAW disk images.
- Avoid distributing compressed virtual disk formats such as
.qcow2.zst,.vhdx.gz, or.vmdk.xz. - Convert the image to RAW before compression.