Skip to content

Cloud Deployment

Para can be deployed to any cloud provider that supports Docker containers or Java applications.

Para Cloud fully managed

Section titled “Para Cloud ”

Don’t want to deal with servers and performance issues? We offer managed Para cloud hosting. Para Cloud is free for developers! If you’re developing a new app, you can store up to 10 000 objects, for free. Browse and manage your users and objects, do backups and edit permissions with a few clicks in the web console. By upgrading to a premium account you will be able to scale you projects up and down in seconds and manage multiple apps.

On Para Cloud you get:

  • Flat pricing, per app
  • Scalable & affordable BaaS
  • Data encryption at rest
  • Web admin console for easy configuration
Check out Para Cloud →

Deploy on Hostinger

  1. Open the Lightsail console or the EC2 console.
  2. Choose a “Linux” AMI (e.g. “Ubuntu 24.04 LTS” or later)
  3. Click “Add launch script” (user data) and copy the contents of installer.sh:
    installer.sh
    installer.sh
    #!/bin/bash
    set -e -x
    # Lightsail/DigitalOcean installer script for Ubuntu
    VERSION="1.50.2"
    PORT="8080"
    WORKDIR="/home/ubuntu/para"
    mkdir -p $WORKDIR/lib
    # Use the GitHub release asset, not the Maven Central artifact. The release JAR is built with the
    # `fatjar` profile, which gives it a Spring Boot PropertiesLauncher and bakes in the default
    # plugins (SQL and Lucene). The Maven Central artifact is a plain JarLauncher with no plugins and
    # ignores -Dloader.path, so it cannot load anything from lib/.
    JARURL="https://github.com/Erudika/para/releases/download/${VERSION}/para-${VERSION}.jar"
    sfile="/etc/systemd/system/para.service"
    apt-get update && apt-get install -y wget openjdk-21-jre &&
    wget -O para.jar ${JARURL} && \
    mv para.jar $WORKDIR && \
    chown -R ubuntu:ubuntu ${WORKDIR} && \
    chmod +x ${WORKDIR}/para.jar
    touch ${WORKDIR}/application.conf && \
    chown ubuntu:ubuntu ${WORKDIR}/application.conf
    # Feel free to modify the Para configuration here
    cat << EOF > ${WORKDIR}/application.conf
    para.app_name = "Para"
    para.port = 8080
    para.env = "production"
    EOF
    touch $sfile
    cat << EOF > $sfile
    [Unit]
    Description=Para
    After=syslog.target
    StartLimitIntervalSec=30
    StartLimitBurst=2
    [Service]
    WorkingDirectory=${WORKDIR}
    SyslogIdentifier=Para
    # JVM -D flags must precede -jar, otherwise the JVM treats them as arguments to Para.
    # -Dloader.path=lib puts the lib/ folder on the classpath; this only works because the release
    # JAR uses PropertiesLauncher. Put JDBC drivers there, e.g. lib/mysql-connector-j.jar.
    ExecStart=java -Dconfig.file=application.conf -Dloader.path=lib -jar para.jar
    User=ubuntu
    Restart=on-failure
    RestartSec=1s
    [Install]
    WantedBy=multi-user.target
    EOF
    # This is optional. These rules might interfere with other web server configurations like nginx and certbot.
    #iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-port ${PORT} && \
    #iptables -t nat -A OUTPUT -p tcp --dport 80 -o lo -j REDIRECT --to-port ${PORT}
    systemctl enable para.service && \
    systemctl start para.service
  4. Download the default SSH key pair or upload your own
  5. Choose the 512MB instance or larger (1GB recommended)
  6. Wait for the instance to start and open the IP address in your browser at port 8000
  1. Clone the Para project repository change directory to it
    Terminal window
    git clone https://github.com/Erudika/para.git
    cd para
  2. Build the JAR file:
    Terminal window
    mvn -Pfatjar package
  3. Create a Buildfile
    Buildfile
    build: mvn -Pfatjar clean package
  4. Create a Procfile
    Procfile
    web: java -jar target/para-server.jar
  5. ↗ Install EB CLI
  6. Initialize your EB CLI repository with the eb init command:
    Terminal window
    eb init -p corretto para-server --region us-east-2
  7. Create an environment and deploy your application to it with eb create:
    Terminal window
    eb create para-server