A fast and automated bash script to easily install Paymenter on Ubuntu 24.04. This script handles dependencies, database creation, Nginx web server configuration, and automatic Let's Encrypt SSL generation.
- 📦 Installs all required dependencies (PHP 8.3, MariaDB, Nginx, Redis).
- 🗄️ Automatically generates and configures the MySQL database.
- 🌐 Sets up Nginx for your specific domain.
- 🔒 Secures your site with a free SSL certificate via Certbot.
- ⚙️ Configures the necessary cronjob and queue worker service.
- A clean installation of Ubuntu 24.04.
- Root access (or sudo privileges) to the server.
- Cloudflare / DNS: Create an A record in your DNS settings pointing your (sub)domain to your server's IP address. Make sure the DNS has propagated before running the script.
Run the following command in your server's terminal. This will download and execute the installation script directly:
bash <(curl -s https://gist.githubusercontent.com/joopdev/0568fc208c98ff1edd5bcb6414903ada/raw)During the installation, the script will pause a few times to ask for your input:
- Domain: Enter the exact domain or subdomain you want to use for Paymenter (e.g.,
billing.yourdomain.com). - Database Password: The script automatically creates the database, but you need to invent a strong password. Type it in and save it.
- SSL Certificate: The script triggers Certbot. When asked to activate HTTPS/SSL, press
Y. - Email Address: Enter an email address you actually check (used for urgent SSL renewal notices).
- Terms of Service: Type
Yto agree to the Let's Encrypt Terms of Service. - EFF Mailing List: Type
Nwhen asked to share your email with the EFF, unless you really want their newsletters. - Root Warning: If any part of the process warns you about running as
root, simply typeyesto continue.
Once the script finishes successfully, you just need to set up your Paymenter admin account and initial settings. Run these final two commands manually:
Initialize the app:
cd /var/www/paymenter && php artisan app:initCreate your Admin user:
cd /var/www/paymenter && php artisan app:user:createAt the end of the script, it will display your newly generated APP_KEY. Back this up somewhere safe! It is used to encrypt all data (like user passwords) in the database. If you lose it, all encrypted data is irrecoverable, even if you have database backups.