Skip to content

The various components of the EXPOSE server, deployed on Fly.io

License

Notifications You must be signed in to change notification settings

exposesh/expose-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EXPOSE-server

About

EXPOSE-server is the heart of EXPOSE.
It consists of various programmes that are containerised in a single Docker container and then deployed to machines all over the world using Fly.io. These different programs are :

  • An SSH server in Python,
  • A Node.js program that acts as an intermediary between the SSH server and the Web server, as well as between remote Web resources and programs in the container,
  • A Web server built on OpenResty.

Find out more about EXPOSE by clicking here.

Deploy

Generating an SSH key pair

ssh-keygen -t ed25519 -f ./ssh_key -N ""

Completing fly.toml file

Copy the file fly.toml.example to fly.toml:

cp fly.toml.example fly.toml

You need to define the following environment variables:

WELCOME_BANNER_URL
FREE_BANNER_URL
PAID_BANNER_URL
TROUBLE_BANNER_URL
UNRECOGNISED_USER_BANNER_URL
VERIFY_GITHUB_USER_AND_FETCH_SSH_KEYS_URL

The first four correspond to the banners, and therefore their access link on Google Cloud Storage.
The last is the link to the Cloud Function that manages user verification.

Deploying on fly.io