scripts/build.server.md
2025-05-05 11:58:47 -06:00

4.8 KiB
Raw Permalink Blame History

date, tags, author
date tags author
2025-04-28
script
The Bunker Admin

build.server

Purpose: a Ubuntu server build-out for general application


This documentation is a overview of the full Public Interest Alberta Server Build Out. It is a manual to re-install this server on any machine.

All of the following systems are free and the majority are open source.

Ubuntu OS

Ubuntu is a Linux distribution derived from Debian and composed mostly of free and open-source software.

Install Ubuntu

Post Install

Post installation, run update:

sudo apt update
sudo apt upgrade

Configuration

Further configurations:

  • User profile was updated to Automatically Login
  • Remote Desktop, Sharing, and Login have all been enabled.
  • Default system settings have been set to dark mode.

VSCode Insiders

Visual Studio Code is a new choice of tool that combines the simplicity of a code editor with what developers need for the core edit-build-debug cycle.

Install Using App Centre

Obsidian

The free and flexible app for your private thoughts.

Install Using App Center

Curl

command line tool and library for transferring data with URLs (since 1998)

Install

sudo apt install curl 

Glances

Glances an Eye on your system. A top/htop alternative for GNU/Linux, BSD, Mac OS and Windows operating systems.

Install

sudo snap install glances 

Syncthing

Syncthing is a continuous file synchronization program. It synchronizes files between two or more computers in real time, safely protected from prying eyes. Your data is your data alone and you deserve to choose where it is stored, whether it is shared with some third party, and how its transmitted over the internet.

Install

# Add the release PGP keys:
sudo mkdir -p /etc/apt/keyrings
sudo curl -L -o /etc/apt/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg
# Add the "stable" channel to your APT sources:
echo "deb [signed-by=/etc/apt/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list
# Update and install syncthing:
sudo apt-get update
sudo apt-get install syncthing

Post Install

Run syncthing as a system service.

sudo systemctl start syncthing@yourusername
sudo systemctl enable syncthing@yourusername

Docker

Docker helps developers build, share, run, and verify applications anywhere — without tedious environment configuration or management.

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Update Users

sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker

Enable on Boot

sudo systemctl enable docker.service
sudo systemctl enable containerd.service

Cloudflared

Connect, protect, and build everywhere. We make websites, apps, and networks faster and more secure. Our developer platform is the best place to build modern apps and deliver AI initiatives.

sudo mkdir -p --mode=0755 /usr/share/keyrings
curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared any main" | sudo tee /etc/apt/sources.list.d/cloudflared.list
sudo apt-get update && sudo apt-get install cloudflared

Post Install

Login to Cloudflare

cloudflared login

Configuration

  • Setting up the service.cloudflared enables your cloudflared tunnel to automatically run on reboot

Pandoc

If you need to convert files from one markup format into another, pandoc is your swiss-army knife.

sudo apt install pandoc

Changemaker (V3.9.9.1)