Installation

Download and run the installer, choose its options, and find the login details, the log and the saved configuration afterwards.

Written for ArcPanel 2.2

The installer sets up ArcPanel and the services you choose on a fresh Debian or Ubuntu server in 10 to 15 minutes. Check the Requirements first.

Tip

The install page builds the command for you: pick a preset and the services, then copy the command. This guide explains each step and option.

Download the installer

Log in to the server over SSH as root, or as a user that can use sudo:

wget https://arcpanel.org/install.sh

No wget? Use curl -fsSLo install.sh https://arcpanel.org/install.sh. An SSL error means the server lacks CA certificates: run apt-get update && apt-get install ca-certificates and try again.

install.sh detects Debian or Ubuntu and runs the installer of the current stable release with the options you give it.

Run it

With the defaults:

sudo bash install.sh

The installer shows what it will install and asks you to confirm. It then asks for:

  • the administrator username: 2 to 30 letters, digits, dots, hyphens or underscores, starting and ending with a letter or digit;
  • the administrator e-mail address, which receives the login details and notifications;
  • the host name of the server, such as panel.example.com;
  • the administrator password.

You can give the first three as options, for example --username, --email and --hostname, and skip the confirmation with --interactive no. Let the installer ask for the password: a password on the command line stays in your shell history.

sudo bash install.sh --interactive no --hostname panel.example.com --email admin@example.com --username arcadmin

Choose the services

Every option takes yes or no. Leave out an option to keep its default.

Option Default What it does
--apache yes Apache behind NGINX, for .htaccess support
--phpfpm yes PHP through PHP-FPM; always on without Apache
--multiphp no Several PHP versions; also takes a list such as 8.3,8.4
--vsftpd yes The VSFTPD FTP server
--proftpd no ProFTPD instead of VSFTPD
--named yes BIND, to host the DNS zones of your domains
--mysql yes MariaDB
--mysql8 no Oracle MySQL 8 instead of MariaDB
--postgresql no PostgreSQL with phpPgAdmin
--exim yes The Exim mail server
--dovecot yes IMAP and POP3; needs Exim
--sieve no Server-side mail filters; needs Dovecot
--clamav by memory Virus scanning of mail; yes with 3 GB of memory or more
--spamassassin by memory Spam filtering; yes with about 1.5 GB of memory or more
--iptables yes The firewall managed by the panel
--fail2ban yes Bans brute-force attempts; needs iptables
--quota no Disk quotas per user
--resourcelimit no CPU and memory limits per user
--webterminal no A shell in the browser
--api yes Access keys and REST API v2
--port 8083 The port of the panel
--lang en The panel language, for example vi, de, fr or ja

Common choices:

  • Web without mail: --exim no.
  • Apps only (Node.js, Docker and app processes): --apache no --vsftpd no --named no --exim no.

--force skips the checks for a fresh server. Use it only when you know why the check fails, for example on a test machine without netplan.

When it finishes

The installer ends with Congratulations! and prints:

  • the Admin URL, https://panel.example.com:8083, and a backup URL with the IP address;
  • the administrator username;
  • a note that automatic updates are on.

The same message goes to the administrator e-mail address. Restart the server when the installer asks: in interactive mode it waits for a key and reboots; otherwise reboot it yourself.

sudo reboot

On that first restart, ArcPanel asks Let's Encrypt for a certificate for the host name, so the panel stops showing a certificate warning once the host name resolves.

Where things are

What Where
The installation log /root/arcpanel_install_backups/arc_install-<date>.log
Configuration replaced by the installer /root/arcpanel_install_backups/<date>/
ArcPanel itself /usr/local/arcpanel
Sites, mail and files of users /home/<user>
Backups /backup

Warning

The installation log contains the administrator password. Keep it readable by root only, or delete it once the panel works.

If it fails

  • "Install script version does not match package version!" A new release came out while you were downloading. Download install.sh again and rerun it.
  • "ArcPanel should be installed on a clean server." The installer found other services. Start again on a fresh server; see Requirements.
  • Anything else: read the end of the installation log, and ask on GitHub Discussions with the error and your system version.

Next steps

Open the Admin URL and sign in: First login.

Last updated