* Improve the main crontab example. * Remove /opt/Docker hardcodes. * Add periods. * Improve readability. * Begin removing hardcoded path from the bin files. * Update main README to no longer enforce hardcoded path. Other improvements. * Add the load folder with a README. * Add load folder and its README. * Improve reverse proxy text files. * Switch to tabs. * Update all scripts for tabs, DOCKER_HOME, and comments. * Let users know the directory choice is optional. * Fix environment file. * Add more details for the reverse proxy load balancing. * Don't actually listen for postgres. * Fix comments on source file. * Be more explicit on the pathing.
		
			
				
	
	
		
			68 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| # 2022-08-05 Hyperling
 | |
| # Install docker from official repository. Currently only supports apt.
 | |
| # Original comands came from here: https://docs.docker.com/engine/install/debian/
 | |
| # usage: install.sh
 | |
| 
 | |
| ## Setup ##
 | |
| 
 | |
| DIR="`dirname $0`"
 | |
| PROG=`basename $0`
 | |
| if [[ $DIR == *"."* ]]; then
 | |
| 	DIR="`pwd`"
 | |
| fi
 | |
| if [[ -z $DOCKER_HOME ]]; then
 | |
| 	DOCKER_HOME="$DIR/.."
 | |
| fi
 | |
| 
 | |
| os=`grep ^'NAME=' /etc/os-release`
 | |
| pkgmgr=""
 | |
| 
 | |
| ## Validations ##
 | |
| 
 | |
| if [[ "$os" == *"Debian"* ]]; then
 | |
| 	repo="debian"
 | |
| 	pkgmgr="apt"
 | |
| elif [[ "$os" == *"Ubuntu"* ]]; then
 | |
| 	repo="ubuntu"
 | |
| 	pkgmgr="apt"
 | |
| elif [[ $os == "Arch Linux" ]]; then
 | |
| 	pkgmgr="pacman"
 | |
| else
 | |
| 	echo "Distribution not yet supported." &&
 | |
| 	exit 1
 | |
| fi
 | |
| echo "os=$os"
 | |
| echo "repo=$repo"
 | |
| echo "pkgmgr=$pkgmgr"
 | |
| 
 | |
| ## Main ##
 | |
| 
 | |
| if [[ "$pkgmgr" == "apt" ]]; then
 | |
| 	apt purge docker docker-engine docker.io containerd runc podman-docker
 | |
| 
 | |
| 	apt update &&
 | |
| 	apt install -y ca-certificates curl gnupg lsb-release &&
 | |
| 	mkdir -p /etc/apt/keyrings &&
 | |
| 	curl -fsSL https://download.docker.com/linux/$repo/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg &&
 | |
| 	echo \
 | |
| 		"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/$repo \
 | |
| 		$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null &&
 | |
| 	apt update &&
 | |
| 	apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin &&
 | |
| 
 | |
| 	echo "Success!" &&
 | |
| 	exit 0
 | |
| elif [[ $pkgmgr == "pacman" ]]; then
 | |
| 	pacman -Rcns --noconfirm *docker*
 | |
| 
 | |
| 	pacman -Sy --noconfirm docker docker-compose &&
 | |
| 	echo "Success!" &&
 | |
| 	exit 0
 | |
| fi
 | |
| 
 | |
| ## Error ##
 | |
| 
 | |
| echo "ERROR: Installation failed!"
 | |
| exit 1
 |