initial commit

This commit is contained in:
scriptos 2023-08-01 12:37:55 +02:00
parent 000a833ffd
commit 091885cd51
5 changed files with 170 additions and 2 deletions

View File

@ -1,6 +1,6 @@
MIT License
Copyright (c) <year> <copyright holders>
Copyright (c) 2023 | Patrick Asmus | scriptOS
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

View File

@ -1,2 +1,28 @@
# docker-installer
# Docker Installer v3 für Ubuntu-Systeme
## Beschreibung
Das Skript "docker-installer-v3.sh" ermöglicht die Installation von Docker und Docker-Compose auf einem Ubuntu-System. Es richtet auch das Docker-Plugin für Oh My ZSH ein, um Docker-Befehle direkt in der ZSH-Shell verwenden zu können.
## Voraussetzungen
Stellen Sie sicher, dass Sie über eine Verbindung zum Internet verfügen und dass Sie als Benutzer mit sudo-Berechtigungen angemeldet sind, da das Skript administrative Berechtigungen benötigt, um Docker zu installieren.
## Verwendung
Führen Sie das Skript mit dem folgenden Befehl in einem Terminal aus:
```bash
bash ./docker-installer.v3.sh
```
## Schritte des Skripts
1. **Variablen setzen:** Das Skript setzt die Variable `USER` auf den Wert "root". Sie können diesen Wert ändern, wenn Sie Docker für einen anderen Benutzer installieren möchten.
2. **Docker installieren:** Das Skript aktualisiert zunächst das System und installiert die erforderlichen Abhängigkeiten für die Docker-Installation. Anschließend wird der Docker-Schlüssel heruntergeladen und importiert, und die Docker-Repository-URL wird zur Paketquelle hinzugefügt. Nach einer weiteren Aktualisierung der Paketliste wird Docker installiert und der Docker-Dienst gestartet. Schließlich wird der aktuelle Benutzer der "docker"-Gruppe hinzugefügt, um Docker ohne sudo-Berechtigungen ausführen zu können.
3. **Docker-Compose installieren:** Das Skript installiert den Docker-Compose-Befehl, indem es die neueste Version von GitHub herunterlädt und in das Verzeichnis "/usr/local/bin" kopiert. Es gibt dem Befehl die Ausführungsberechtigung.
4. **Optionel: Ordner und Oh My ZSH Plugin einrichten:** Das Skript erstellt einen Ordner namens "docker" im Root-Verzeichnis ("/"), um Docker-Konfigurationsdateien zu speichern. Es erstellt eine leere "docker-compose.yaml"-Datei in diesem Ordner. Dann wird das Docker-Plugin für Oh My ZSH eingerichtet, indem die "plugins"-Zeile in der ZSH-Konfigurationsdatei ("/root/.zshrc") angepasst wird.
5. **Überprüfen der Installation:** Das Skript überprüft, ob die Installation erfolgreich war, indem es die Versionen von Docker und Docker-Compose ausgibt.

46
docker-installer.sh Normal file
View File

@ -0,0 +1,46 @@
#!/bin/bash
##########################################################################################
# .--.
# |o_o |
# |:_/ |
# // \ \
# (| | )
# /'\_ _/`\
# \___)=(___/
# _ _ _ _ _ _
# __| | ___ ___ | | __ ___ _ __ (_) _ __ ___ | |_ __ _ | || | ___ _ __
# / _` | / _ \ / __|| |/ // _ \| '__|_____ | || '_ \ / __|| __|/ _` || || | / _ \| '__|
#| (_| || (_) || (__ | <| __/| | |_____|| || | | |\__ \| |_| (_| || || || __/| |
# \__,_| \___/ \___||_|\_\\___||_| |_||_| |_||___/ \__|\__,_||_||_| \___||_|
#
# (c) Patrick Asmus
# support@media-techport.de
# https://www.media-techport.de
##########################################################################################
# Last Update: 06. November 2022
# Version 1.0.2
##########################################################################################
clear
sleep 2
exec > >(tee -i "/var/log/docker-installer.log")
exec 2>&1
HOSTNAME="$(hostname)"
#Globale Funktion zur Aktualisierung und Bereinigung der Umgebung
function update_and_clean {
apt update
apt full-upgrade -y
apt autoclean -y
apt autoremove -y
}
#START
sleep 2
update_and_clean
apt install sudo -y
apt install docker-compose docker docker.io -y
mkdir /docker
touch /docker/docker-compose.yaml
echo OhMyZSH Plugin für Docker hinzufügen
sudo sed -i 's/plugins=(git)/plugins=(git docker)/g' /root/.zshrc
echo Fertig. Zeit fuer ein Bierchen.
cat /dev/null > ~/.bash_history && history -c && history -w
exit 0

40
docker-installer.v3.sh Normal file
View File

@ -0,0 +1,40 @@
#!/bin/bash
# Script Name: docker-installer.v3.sh
# Beschreibung: Docker & Docker-Compose installieren (Für Ubuntu)
# Aufruf: bash ./docker-installer.v3.sh
# Autor: Patrick Asmus
# Web: https://www.media-techport.de
# Git-Reposit.: https://git.media-techport.de/scriptos/docker-installer
# Version: 3.0.1
# Datum: 11.06.2023
#####################################################
# Variablen
USER="root"
# Docker installieren
sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo usermod -aG docker $USER
# Docker-compose installieren
sudo apt install -y curl
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
# Optional: Ordner erstellen und Plugin für Oh my ZSH aktivieren
mkdir /docker
touch /docker/docker-compose.yaml
echo OhMyZSH Plugin für Docker hinzufügen
sudo sed -i 's/plugins=(git)/plugins=(git docker)/g' /root/.zshrc
# Überprüfen der Installation
docker --version
docker-compose --version
exit 0

56
docker-installer2.sh Normal file
View File

@ -0,0 +1,56 @@
#!/bin/bash
##########################################################################################
# .--.
# |o_o |
# |:_/ |
# // \ \
# (| | )
# /'\_ _/`\
# \___)=(___/
# _ _ _ _ _ _
# __| | ___ ___ | | __ ___ _ __ (_) _ __ ___ | |_ __ _ | || | ___ _ __
# / _` | / _ \ / __|| |/ // _ \| '__|_____ | || '_ \ / __|| __|/ _` || || | / _ \| '__|
#| (_| || (_) || (__ | <| __/| | |_____|| || | | |\__ \| |_| (_| || || || __/| |
# \__,_| \___/ \___||_|\_\\___||_| |_||_| |_||___/ \__|\__,_||_||_| \___||_|
#
# (c) Patrick Asmus
# support@media-techport.de
# https://www.media-techport.de
##########################################################################################
# Last Update: 14. Oktober 2022
# Version 2.0.1
##########################################################################################
clear
sleep 2
exec > >(tee -i "/var/log/docker-installer2.log")
exec 2>&1
HOSTNAME="$(hostname)"
#Globale Funktion zur Aktualisierung und Bereinigung der Umgebung
function update_and_clean {
apt update
apt full-upgrade -y
apt autoclean -y
apt autoremove -y
}
#START
sleep 2
update_and_clean
apt install sudo -y
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release -y
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/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/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
update_and_clean
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
mkdir /docker
sudo service docker start
sudo service docker enable
sudo docker run hello-world
echo Fertig. Zeit fuer ein Bierchen.
exit 0