Skip to content
English
  • There are no suggestions because the search field is empty.

How to Set Up an Offline Linux Server for DisplaySweet Projects

This article explains how to configure a Linux-based offline server using Nginx and AWS S3 sync to host DisplaySweet Presenter projects without internet access.

OVERVIEW

For projects requiring offline usage—such as restricted environments, remote locations, or exhibition builds—you can set up a local Linux server to host Presenter assets. This guide covers system prep, Nginx setup, AWS S3 sync automation, and domain configuration to ensure smooth offline operation.


Setting Up an Offline Server for Presenter Projects

Follow these steps to install dependencies, configure AWS syncing, and serve content locally via HTTPS.


Step 1: Update System & Install Nginx

  1. Download project files from Google Drive

  2. Place all files in: 

    /root/
  3. Run the following commands: 

sudo apt-get update
sudo apt install nginx -y

Step 2: Install AWS CLI (v2)

  1. Manually install AWS CLI with:

 
wget "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -O "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

Step 3: Configure S3 Sync Script

  1. Open the sync script: 

    nano /root/s3_sync_.sh
  2. Update the S3 bucket path and sync parameters.


Step 4: Automate Sync with Cron

  1. Edit crontab: 

    crontab -e
  2. Add the following jobs: 

# Sync every night at midnight
0 0 * * * /root/s3_sync_.sh > /root/sync.log

# Sync at system boot
@reboot /root/s3_sync_.sh > /root/sync_boot.log

Step 5: Validate and Start Nginx

  1. Move config files to correct locations:

    1. Move files from /root/nginx.conf to /etc/nginx/nginx.conf
      mv /root/nginx.conf /etc/nginx/nginx.conf
    2. Move files from /root/default  to /etc/nginx/site-available/default
      mv /root/default /etc/nginx/sites-available/default
    3. Move files from /root/certificate.crt /etc/nginx/
      mv /root/certificate.crt /etc/nginx/
    4. Move files from /root/private.key /etc/nginx/
      mv /root/private.key /etc/nginx/
  2. Test and start Nginx:
    sudo nginx -t

If the configuration is successful, run:

sudo systemctl enable nginx
sudo systemctl start nginx
 

Step 6: Configure Offline Domain

  1. Update domain inside /etc/nginx/nginx.conf:

    • Use: offline.displaysweet.com or projectname.displaysweet.com

  2. Point your domain:

    • Locally via /etc/hosts or router DNS

    • Or configure via AWS Route 53 if external control is needed


Step 7: Test the Server

Open a test asset in a browser in pc in same network as offline server:

E.g

https://irongate.displaysweet.com/project_images/ChaletAlpina/1.0/3dassets/map/icon/Chalet_Alpina.png

Then:

  • Update the domain URL in your CMS (cms.displaysweet.com)

  • Use browser developer tools (F12) to inspect network traffic

  • Confirm assets are loading correctly


Step 8: Final QA

  • Have the testing team verify access and asset delivery at the client location

  • Confirm offline mode functionality across all expected content types


Copyable Setup Checklist ✅

You can copy this into your deployment doc:

  • Server updated and Nginx installed

  • AWS CLI installed and tested

  • s3_sync_.sh script configured

  • Cron jobs set for daily and boot sync

  • Nginx config tested and active

  • Domain updated in /etc/nginx/nginx.conf

  • Local DNS or Route 53 configured

  • CMS domain updated to offline domain

  • Browser test of asset URLs successful

  • QA signed off at client location


Resources

🔗 DisplaySweet Project Assets on Google Drive