#!/bin/bash
clear
function info {
echo -e "\e[1;34m$@\e[0m"
}
function success {
echo -e "\e[1;32m$@\e[0m"
}
function error {
echo -e "\e[1;31m$@\e[0m"
}
function progress {
echo -n "$@"
for i in {1..3}; do
echo -n "."
sleep 0.5
done
echo ""
}
info " Überprüfen und Installieren von Docker"
if ! command -v docker &> /dev/null
then
progress "Docker wird installiert"
curl -fsSL https://get.docker.com -o get-docker.sh &> /dev/null
sudo sh get-docker.sh &> /dev/null
rm get-docker.sh
sudo usermod -aG docker $USER
success "Docker wurde erfolgreich installiert."
else
success "Docker ist bereits installiert."
fi
progress "Portainer-Container wird heruntergeladen und gestartet"
docker volume create portainer_data &> /dev/null
docker run -d -p 8000:8000 -p 9443:9443 \
--name portainer \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
portainer/portainer-ce &> /dev/null
if [ "$(docker ps -q -f name=portainer)" ]; then
success "Portainer wurde erfolgreich installiert und gestartet."
else
error "Portainer konnte nicht gestartet werden. Bitte prüfen Sie die Docker-Konfiguration."
exit 1
fi
SERVER_IP=$(hostname -I | awk '{print $1}')
info "Web-Interface von Portainer ist erreichbar unter: https://$SERVER_IP:9443"
info "Melden Sie sich mit einem neuen Benutzerkonto an, um Portainer zu konfigurieren."