Deployment guide

1Panel

Overview

1Panel is an open source, browser-based control panel for managing a Linux server. From one dashboard it handles websites and their reverse proxy, Docker containers and images, databases, files, cron jobs, SSL certificates and the host firewall. Its App Store offers one-click, self-hosted applications, so common services deploy without the command line.

This SecureAnyCloud image installs 1Panel v2.2.3 from the official release tarball (sha256 verified) and installs Docker Engine as the application runtime. The panel is online within a minute or two of launch.

What you get:

  • 1Panel v2.2.3 (GPL-3.0) installed from the official release tarball, pinned and sha256 verified so the image never silently changes at build time
  • Docker Engine (Docker CE) and the Docker Compose plugin, installed by the 1Panel installer as the application runtime
  • Two systemd services, 1panel-core.service (the web panel on port 10086) and 1panel-agent.service, plus the 1pctl control CLI
  • A mandatory secret entrance: the dashboard is reachable only at http://<vm-ip>:10086/<entrance>, so the panel is hidden from casual port scans
  • A unique administrator username, password and secure entrance generated on the first boot of every VM and written to a root-only file, with no default login in the image
  • An Ubuntu 24.04 LTS base, patched at build time, with unattended security updates enabled
  • 24/7 SecureAnyCloud support

Prerequisites

You need an active Azure subscription, an SSH key, and a VNet with a subnet.

Standard_B2s (2 vCPU / 4 GB) is the recommended size for the panel itself. Choose a larger size if you plan to run many containers or websites.

Configure the network security group (NSG) to allow inbound 22/tcp from your management CIDR for SSH, and 10086/tcp from the CIDR that needs the 1Panel dashboard. If you later host websites through 1Panel, also open 80/tcp and 443/tcp.

1

Connect over SSH

Connect as azureuser, the default login user. Replace <vm-ip> with the public IP of your VM.

ssh azureuser@<vm-ip>
2

Confirm the services are active

sudo systemctl is-active 1panel-core 1panel-agent docker systemctl is-enabled 1panel-firstboot.service 2>/dev/null || echo "disabled (already ran on first boot)"

Expect active printed three times. The 1panel-firstboot.service reports disabled: it runs once on first boot to generate your unique credentials, then disables itself.

3

Confirm the 1Panel version and base OS

sudo 1pctl version grep PRETTY_NAME /etc/os-release

The panel is pinned to v2.2.3 on an Ubuntu 24.04 LTS base, patched at build time.

4

Confirm Docker is installed

1Panel manages Docker-based applications, so Docker Engine ships preinstalled and enabled. Check the versions:

docker --version
docker compose version
sudo docker info --format 'Server Version: {{.ServerVersion}}'
5

Retrieve your unique panel credentials

On first boot, your instance generates a unique administrator username, password and secret entrance. They are written to a root-only file (0600 root:root) that also holds the full login URL, including the secret entrance path.

sudo ls -l /root/1panel-credentials.txt
sudo cat /root/1panel-credentials.txt

The file holds 1PANEL_URL (the full sign-in URL including the secret entrance), 1panel.username and 1panel.password. Note the 1PANEL_URL value: that is exactly where you sign in. sudo 1pctl user-info also prints the panel address and username.

6

Verify the administrator login works

Run this check to confirm that the per-VM administrator credentials authenticate against the panel. It reads the generated username, password, entrance and port from the credentials file. It checks them against the panel's own credential store and confirms that the panel answers at the secret entrance.

CREDS=/root/1panel-credentials.txt
PORT=$(sudo grep '^1panel.port=' "$CREDS" | cut -d= -f2-)
ENT=$(sudo grep '^1panel.entrance=' "$CREDS" | cut -d= -f2-)
USER=$(sudo grep '^1panel.username=' "$CREDS" | cut -d= -f2-)
PASS=$(sudo grep '^1panel.password=' "$CREDS" | cut -d= -f2-) sudo /usr/local/sbin/1panel-login-check.sh "$PORT" "$ENT" "$USER" "$PASS"

An OK: line confirms that the per-VM credentials authenticate and that the dashboard is live at the secret entrance.

7

Sign in to the 1Panel dashboard

Browse to the 1PANEL_URL from Step 5, which has the form http://<vm-ip>:10086/<entrance>. Sign in with your generated username and password.

The secret entrance is mandatory. http://<vm-ip>:10086/ without the entrance suffix does not reveal the panel.

8

Explore the Overview dashboard

After you sign in, you land on the Overview dashboard. It shows live host status (load, CPU, memory and disk gauges), counts of your websites, databases and applications, and quick install cards for popular apps.

The left sidebar links to App Store, WebSites, Databases, Containers, System, Terminals, Cron Jobs, Toolbox, Logs and Settings.

9

Deploy from the App Store

Open App Store to browse the catalogue of one-click, self-hosted applications: web servers, databases, developer tools, AI apps and more.

Pick an app, click Install, and choose a version and settings. 1Panel provisions the app as a managed Docker container.

10

Manage Docker containers

Open Containers to manage everything Docker on the host: containers, Compose stacks, images, networks, volumes and image repositories. All of it runs on the preinstalled Docker Engine.

The Overview tab summarizes what is running and shows disk usage.

11

Change the secure entrance or port (optional)

Manage the secret entrance and other panel settings from Settings in the dashboard, or from the CLI. To view the current values at any time, run:

sudo 1pctl user-info

To rotate the secure entrance, run sudo 1pctl reset entrance and note the new value. To change the port, run sudo 1pctl update port. Update your NSG rule for port 10086 to match any port change.

12

Host a website over HTTPS (optional)

1Panel can host websites with an automatic reverse proxy and Let's Encrypt certificates. In the dashboard, open WebSites → Create Website. Point a DNS A record at the VM's public IP, and 1Panel issues and renews an SSL certificate for you.

Open ports 80/tcp and 443/tcp in your NSG so the ACME HTTP-01 challenge and HTTPS traffic can reach the host.

13

Day-2 operations

Manage the panel with 1pctl and systemd:

sudo 1pctl status
sudo systemctl restart 1panel-core 1panel-agent

1Panel data lives under /opt/1panel. Unattended security upgrades are enabled by default, which keeps the OS patched.

When you are ready to move to a newer 1Panel release, use 1Panel's built-in updater or 1pctl update. Review the release notes first.

Support

SecureAnyCloud provides 24/7 technical support by email and chat. Support covers deployment, the secure entrance and panel access, hosting websites and the reverse proxy, SSL certificates, Docker container and App Store deployments, databases, cron jobs, the host firewall and runtime tuning.

All product and company names are trademarks or registered trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them. 1Panel is a trademark of its respective owner.

Deploy on Azure

Launch 1Panel v2.2.3 Server Management Panel on Ubuntu 24.04 LTS on Azure with 24/7 support from SecureAnyCloud.

View this image

Need Help?

Our support team is available 24/7.

sales@secureanycloud.com

Deploy on Azure