The IO Foundation
CrowdShape
Search
K
Comment on page

Create Corteza Instances

SolarPutty

  • Generate certificate
  • Add a Passphrase
  • Export files
    • Public [click Save Public Key button]
    • Private [click Save Private Key button]
    • Open SSH [use menu Conversions]
    • Open SSH (New format) [use menu Conversions]
    • SSH.com [use menu Conversions]
    • Copy field "Public key for pasting into OpenSSH authorized_key file"
    • Paste and save on new text file
Save all of this in a secure place:
  • Preferably Keepass
  • Folder with specific permissions (see below)

Windows

  • Go to the folder where the key files are stored
  • Right click > Properties > Security > Advanced
  • Ensure Owner is the current user
  • Click "Disable inheritance" > "Remove all inherited permissions from this object"
  • Click Add
    • Select a Principal
    • Type: Allow
    • Applies to: "This folder, subfolders and files"
    • Click "Full control"
    • Click OK (screen will return)
  • Click OK (screen will return)
  • Click OK (screen will close)

Eclips.is

  • Go to VPS management panel
  • Select "New VPS"
  • Set settings
    • Configuration: 1GiB / 1 Core
    • Disk size 20GB
    • Location: Amsterdam
    • Software: Ubuntu (latest available)
  • Select "Add new SSH Key
    • Enter new key alias
    • Paste manual key
  • Enter Hostname
  • Cloud-init: None: Just install Operative System
  • Advanced options: Nothing
Click "Create"
Eclips.is will proceed to create the new VPS.
Once ready, a web-based console will be offered.

SSH

  • Open command window (preferably with admin rights)
  • Compose SSH command
    • ssh -i "<Full path to Private OpenSSH New format file" root@<ServerIP>
  • When prompted
    • Check that the ECDSA fingerprint is correct
      Compare fingerprint given by SSH connection and info on the VPS server (Configuration tab)
    • Reply yes
  • Prompt will ask for passphrase (of that private key to be used)
    • Copy from secure storage
    • Paste using window frame > Right click > Edit > Paste [nothing will show on screen]
    • Press enter
Now you are in.

Cloudflare

  • Go to Cloudflare
  • Create A record on DNS pointing to ServerIP
    • Make sure it's not proxied

Prep the Server

First steps

  • Update apt-get
sudo apt-get update
  • Install nano
sudo apt install nano
(This will install a text editor that is worth using.)
  • Configure host file
    Type
nano /etc/hosts
  • Add line 127.0.0.1
127.0.0.1 <hostname>
  • Save [Control O]
  • Exit [Control X]
  • Check with sudo that no resolve errors are happening
  • Update apt-get (again, just in case)
sudo apt-get update

Setup Docker

  • Install Docker (approx 300MB - say Y)
sudo apt install docker.io
Install Compose (approx 16MB - say Y)
sudo apt-get install docker-compose

Corteza install

nginx install

  • Create nginx folder
mkdir nginx
  • Move to nginx folder
cd nginx
  • Create YAML file for docker-compose
nano docker-compose.yaml
  • Copy docker-compose.yaml content from Corteza docs
    • Paste using window frame > Right click > Edit > Paste
    • Save [Control O]
    • Exit [Control X]
  • Create custom.conf file for docker-compose
nano custom.conf
  • Copy custom.conf content from Corteza docs
    • Paste using window frame > Right click > Edit > Paste
    • Save [Control O]
    • Exit [Control X]
  • Generate some proxy (unclear why)
docker network create proxy
  • Install and launch nginx
docker-compose up -d
  • Verify all nginx processes are up
docker-compose ps
  • Exit nginx folder
cd ..

Corteza core Install

  • Create corteza-production folder
mkdir corteza-production
  • Move to corteza-production folder
cd corteza-production
  • Create .env file for docker-compose
nano .env
  • Copy .env content from Corteza docs
    • Paste using window frame > Right click > Edit > Paste
    • Save [Control O]
    • Exit [Control X]
  • Create YAML file for docker-compose
nano docker-compose.yaml
  • Copy docker-compose.yaml content from Corteza docs
    • Paste using window frame > Right click > Edit > Paste
    • Save [Control O]
    • Exit [Control X]
  • Create .env file for docker-compose
nano .env
  • Set variables
    DOMAIN=<hostname@YourDomain>
    AUTH_JWT_SECRET= <MINIMUM 30 characters - store in Keepass>
    FEDERATION_ENABLED=true
  • Save and exit
  • Install and launch Corteza
docker-compose up -d
  • Verify all Corteza processes are up
docker-compose ps
  • Repeat until all up
  • Proceed to new server URL
  • Register Super Admin account