Proxmox CasaOS Deploy is a single Bash script —Documentation Index
Fetch the complete documentation index at: https://mintlify.com/damianiglesias/proxmox-casaos-deploy/llms.txt
Use this file to discover all available pages before exploring further.
casaosscript.sh — that turns a bare Proxmox LXC container into a fully configured home media server in minutes. Run it on a fresh container and it handles everything: updating the system, installing dependencies, pulling down CasaOS via the official installer, creating the media directory tree, and confirming the service is healthy before handing control back to you. Run it again on a container that already has CasaOS and the script automatically shifts into maintenance mode, giving you a focused menu for common admin tasks without any risk of overwriting your existing setup.
What is CasaOS
CasaOS is an open-source home cloud operating system built by IceWhaleTech. It sits on top of a standard Linux install and provides a clean, browser-based dashboard for managing your server. Its built-in app store lets you deploy Docker-based applications — media servers, download clients, dashboards, and more — with a single click, without writing anydocker run or docker-compose commands by hand. CasaOS is designed to be approachable for users who are new to self-hosting while still being flexible enough for power users.
What is Proxmox LXC
Proxmox Virtual Environment supports two virtualisation technologies: full virtual machines (QEMU/KVM) and Linux Containers (LXC). LXC containers share the host kernel instead of emulating an entire hardware stack. The result is dramatically lower RAM and CPU overhead compared with a VM, near-native disk and network performance, and sub-second startup times. For always-on services like a home media server — where you want the workload isolated from the host but do not need a separate kernel — LXC is the practical choice.How the Script Works
The script inspects the container the moment it runs. If CasaOS is already present (command -v casaos), it enters maintenance mode. If CasaOS is absent, it performs a full installation. Both paths are described below.
- Fresh Install
- Maintenance Mode
When no existing CasaOS installation is detected the script executes four numbered steps, printing a coloured progress banner before each one.Step 1 — System update and dependenciesAfter installing the packages the script verifies that This pulls the official IceWhaleTech bootstrap script and pipes it directly to Bash, which handles downloading the correct CasaOS release for the container’s architecture and wiring up the systemd services.Step 3 — Media directory structureThe directories are created under The script waits five seconds for the service to stabilise, then queries systemd. A green banner confirms CasaOS is running; a red banner flags a startup failure. Either way the script prints the container’s LAN IP address so you know exactly where to point your browser.
curl is reachable. If the binary is missing (for example because there is no network route out of the container) it prints a fatal error and exits rather than continuing to a broken state.Step 2 — CasaOS installer/DATA/Media with open permissions so that Docker containers (Jellyfin, Plex, and similar apps) can read and write without permission errors.Step 4 — Final health checkWhat Gets Installed
A fresh install run leaves the container with the following additions:curl— used by the CasaOS bootstrap script and available for general usewget— for downloading files from the command linegit— version control toolinghtop— interactive process and resource monitorneofetch— system information display utility- CasaOS — installed from the official IceWhaleTech installer at
https://raw.githubusercontent.com/IceWhaleTech/get/main/get.sh /DATA/Media/Movies— media directory for film libraries/DATA/Media/TV_Shows— media directory for television libraries/DATA/Downloads— landing directory for download clients
Project Scope
casaosscript.sh targets Debian and Ubuntu based systems only. It is designed to run inside a Proxmox LXC container — not inside a full VM and not on bare-metal hardware. Running it outside of a Debian/Ubuntu LXC environment may produce unexpected results or fail at the apt-get step.Home Media Server
Pair CasaOS with Jellyfin or Plex using the pre-created
/DATA/Media directory structure for an instant, permission-safe media library.Docker App Platform
Use the CasaOS app store to deploy any Docker-based self-hosted app — dashboards, download clients, photo managers, and more — without touching the CLI.
Lightweight Container Host
LXC overhead is minimal, meaning you can run CasaOS alongside other containers on the same Proxmox host without fighting for RAM.
Quick Lab Reset
Re-run the script in maintenance mode to reset credentials or diagnose service issues without tearing down and rebuilding the container.