Skip to main content

Set up Server

Initial Setup

# First, install OS and SSH into root user
passwd
adduser hermann
usermod -aG sudo hermann
su hermann
ssh-keygen -b 4096
echo <SSH_PUBKEY> > ~/.ssh/authorized_keys
# Check if sudo works
exit
# Check if login using SSH key works
nano /etc/ssh/sshd_config # set PasswordAuthentication, PermitRootLogin to no; Port to 9022
systemctl restart ssh
hostnamectl set-hostname netcup
apt update
apt install git docker-compose nginx letsencrypt python3-certbot-nginx
usermod -aG docker hermann

Home Directory + Docker

mkdir git backups
cd git
git clone https://gitlab.namibsun.net/namboy94/docker-compose-configs.git
# Setup all that docker goodness

Nginx

sudo systemctl start nginx.service
sudo systemctl enable nginx.service
sudo rm /etc/nginx/sites-available/default
sudo rm /etc/nginx/sites-enabled/default
# Add own configs to /etc/nginx/sites-available
for x in /etc/nginx/sites-available/*; do sudo ln -s $x /etc/nginx/sites-enabled/`basename $x` ; done;
sudo systemctl restart nginx.service
# Letsencrpyt:
sudo letsencrypt --nginx -d <DOMAIN>

Gitlab Runners

curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash
sudo apt update && sudo apt install gitlab-runner -y
sudo gitlab-runner register -n --url https://gitlab.namibsun.net --registration-token <TOKEN> --executor shell --description "Docker Builder"
sudo gitlab-runner register -n --url https://gitlab.namibsun.net --registration-token <TOKEN> --executor docker --description "Docker Runner" --docker-image ubuntu