Skip to main content

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.

This guide walks you through every step needed to go from a blank Proxmox host to a fully running CasaOS instance — from creating the LXC container to opening the setup wizard in your browser. If your container is already created and you want a line-by-line breakdown of what the script does, see the detailed installation walkthrough.
1

Create a Proxmox LXC Container

In the Proxmox web interface select Create CT and configure the container with the following minimum specifications:
SettingRecommended value
TemplateDebian 12 or Ubuntu 22.04
CPU cores2
RAM2048 MB (2 GB)
Disk10 GB
Before confirming, open the Options tab for the new container and enable Nesting. Nesting allows the container to run Docker — which CasaOS relies on for its entire app store — so this step is required, not optional.
2

Access the Container Shell

Start the container, then open a root shell using one of two methods:Proxmox web console — select the container in the left-hand tree, click the Console tab, and log in as root.SSH — connect directly from your workstation once the container has an IP address:
ssh root@<container-ip>
The script checks $EUID at startup and exits immediately if it is not run as root, so make sure you are in a root session before proceeding.
3

Download the Script

Inside the container shell, pull down casaosscript.sh using wget:
wget https://raw.githubusercontent.com/damianiglesias/proxmox-casaos-deploy/main/casaosscript.sh
Alternatively, clone the full repository if you prefer to have the source locally or want to review the script before running it:
git clone https://github.com/damianiglesias/proxmox-casaos-deploy
cd proxmox-casaos-deploy
4

Make It Executable and Run It

Grant execute permission and launch the script in a single command:
chmod +x casaosscript.sh && bash casaosscript.sh
If you cloned the repository, the command is the same — just run it from inside the cloned directory.
The script must be run as root. If you are connected as a non-root user, prefix the command with sudo or switch to the root account with sudo -i first. The script will exit with an error and make no changes if it detects a non-root environment.
5

Wait for Completion

The script prints coloured progress banners as it works through four stages:
=============================================
       CASAOS DEPLOYER & ADMIN TOOL
=============================================
📦 Step 1: Installing Dependencies...
🏠 Step 2: Running CasaOS Installer...
📂 Step 3: Creating Media structure...
🏥 Step 4: Final Health Check...
The final lines of output confirm the service state and print your container’s LAN address:
✅ CasaOS Service: RUNNING

DONE! Log saved at /var/log/casaos_deploy.log
Access: http://192.168.1.x
The exact IP shown will match the address assigned to your container by your local network’s DHCP server.
6

Open CasaOS in Your Browser

On any device connected to your local network, navigate to the address printed in the final output — for example:
http://192.168.1.x
CasaOS listens on port 80 by default, so no port number is needed in the URL. The first time you visit the address you will see the CasaOS initial setup wizard, which guides you through creating your admin account and personalising your dashboard before you start installing apps.
For a detailed line-by-line explanation of every command the script runs — including what each dependency does and how the health check works — see the Installation Guide.
If the script fails or CasaOS does not appear to start correctly, check the deployment log for the full output of every command that ran during the install:
cat /var/log/casaos_deploy.log
The log captures both stdout and stderr for every step, making it straightforward to spot which command produced an error.

Build docs developers (and LLMs) love