121 lines
3.9 KiB
Bash
Executable File
121 lines
3.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
########################################################
|
|
########################################################
|
|
# installer for simple management a docker container ##
|
|
# Author: Désiré Werner Menrath ##
|
|
# Email: polunga40@unity-mail.de ##
|
|
# Translate German to English with LibreTranslate ##
|
|
# Translatefiles edit with Poedit ##
|
|
# Use without warranty! ##
|
|
########################################################
|
|
########################################################
|
|
|
|
Encoding=UTF-8
|
|
|
|
# i18n - Internationalization - Internationalisierung
|
|
|
|
export TEXTDOMAIN=clidmanager
|
|
export TEXTDOMAINDIR="/usr/share/locale"
|
|
|
|
############################################################################################################
|
|
############################################################################################################
|
|
|
|
isgroup=$(cat /etc/group | grep docker)
|
|
|
|
install() {
|
|
|
|
exists=$(grep -i "alias dm='sudo clidmanager'" ~/.bashrc)
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo "alias dm='sudo clidmanager'" >> ~/.bashrc
|
|
fi
|
|
exists=$(grep -i "alias clidmanager='sudo clidmanager'" ~/.bashrc)
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo "alias clidmanager='sudo clidmanager'" >> ~/.bashrc
|
|
fi
|
|
exists=$(grep -i "alias dw='source docker_work'" ~/.bashrc)
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo "alias dw='source docker_work'" >> ~/.bashrc
|
|
fi
|
|
echo "$USER ALL = NOPASSWD:/usr/local/bin/clidmanager" > no_pwd_clidmanager
|
|
|
|
sudo chown 0:0 no_pwd_clidmanager
|
|
if [ $? -ne 0 ]
|
|
then
|
|
sed -i -e /"alias dm='sudo clidmanager'"/d ~/.bashrc && \
|
|
sed -i -e /"alias clidmanager='sudo clidmanager'"/d ~/.bashrc && \
|
|
sed -i -e /"alias dw='source docker_work'"/d ~/.bashrc
|
|
rm no_pwd_clidmanager
|
|
exit 0
|
|
else
|
|
sudo cp -f clidmanager docker_work /usr/local/bin/ && sudo mv no_pwd_clidmanager /etc/sudoers.d/
|
|
if [ -z $isgroup ]
|
|
then
|
|
sudo usermod -aG docker $USER
|
|
fi
|
|
echo
|
|
echo "clidmanager intalliert."
|
|
echo
|
|
echo "Es wurden aliase angelegt..."
|
|
echo
|
|
echo "Bei der nächten anmeldung können sie clidmanager"
|
|
echo
|
|
echo "entweder über clidmanager oder über dm aufrufen."
|
|
echo
|
|
|
|
read -p "Enter zum beenden drücken..."
|
|
fi
|
|
}
|
|
|
|
remove() {
|
|
|
|
sudo rm -f /usr/local/bin/clidmanager /usr/local/bin/docker_work && sudo rm /etc/sudoers.d/no_pwd_clidmanager
|
|
if [ $? -ne 0 ]
|
|
then
|
|
exit 0
|
|
else
|
|
sudo usermod -rG docker $USER
|
|
sed -i -e /"alias dm='sudo clidmanager'"/d ~/.bashrc && \
|
|
sed -i -e /"alias clidmanager='sudo clidmanager'"/d ~/.bashrc && \
|
|
sed -i -e /"alias dw='source docker_work'"/d ~/.bashrc
|
|
echo
|
|
echo "clidmanager deintalliert."
|
|
echo
|
|
read -p "Enter zum beenden drücken..."
|
|
fi
|
|
}
|
|
|
|
which clidmanager >/dev/null
|
|
if [ $? -eq 0 ]
|
|
then
|
|
echo "Möchten sie updaten/reinstallieren oder clidmanager deinstallieren?"
|
|
echo
|
|
read -n 1 -s -r -p "Update/reinstall: y drücken, deinstallieren r drücken" result
|
|
echo
|
|
echo "Abbruch mit jeder anderen Taste..."
|
|
case $result in
|
|
[y]* ) clear; install; exit;;
|
|
[Y]* ) clear; install; exit;;
|
|
[j]* ) clear; install; exit;;
|
|
[J]* ) clear; install; exit;;
|
|
[r]* ) clear; remove; exit;;
|
|
[R]* ) clear; remove; exit;;
|
|
|
|
esac
|
|
else
|
|
docker compose version >/dev/null 2>&1
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo "Docker Compose wird für die verwendung von clidmanager benötigt."
|
|
echo "Bitte das Paket docker compose installieren."
|
|
read -p "Zum beenden Enter drücken"
|
|
exit 0
|
|
else
|
|
install
|
|
fi
|
|
fi
|
|
|