|
#!/bin/bash |
|
|
|
# TODO: |
|
# - Check os to install packages |
|
# - Check Docker composer command |
|
|
|
# Alias podem ser inseridos aqui |
|
alias zsh-reload="clear; exec zsh;" |
|
|
|
# As funçoes são chamadas como alias tambem |
|
function update() { |
|
sudo apt-get update -y; |
|
sudo apt-get upgrade -y; |
|
sudo apt-get dist-upgrade -y; |
|
sudo apt-get --fix-broken install -y; |
|
sudo apt-get autoremove -y; |
|
sudo apt-get autoclean -y; |
|
sudo apt-get clean -y; |
|
} |
|
|
|
function min-install () { |
|
sudo apt-get install ca-certificates curl gnupg lsb-release git-all -y |
|
} |
|
|
|
function install-docker() { |
|
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 |
|
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y |
|
|
|
sudo groupadd docker |
|
sudo usermod -aG docker ${USER} |
|
reboot |
|
} |
|
|
|
function install-portainer(){ |
|
docker volume create portainer_data |
|
docker run -d -p 3040:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce |
|
} |
|
|
|
function update-portainer(){ |
|
docker stop portainer |
|
docker rm portainer |
|
docker rmi portainer/portainer |
|
docker rmi portainer/portainer-ce |
|
docker volume rm portainer_data |
|
install-portainer |
|
} |
|
|
|
function required-pkg(){ |
|
required_pkg=$1; |
|
|
|
pkg_ok=$(dpkg-query -W --showformat='${Status}\n' "$required_pkg"|grep "install ok installed") |
|
if [ "" = "$pkg_ok" ]; then |
|
echo "No $required_pkg. Setting up $required_pkg..." |
|
sudo apt --yes install "$required_pkg" |
|
fi |
|
} |
|
|
|
function dd-error() { |
|
echo "$(tput setaf 1)[ERROR] ---- $1" |
|
tput init |
|
} |
|
|
|
function dd-success() { |
|
echo "$(tput setaf 2)[SUCCESS] ---- $1" |
|
tput init |
|
} |
|
|
|
function dd-warning() { |
|
echo "$(tput setaf 3)[WARNING] ---- $1" |
|
tput init |
|
} |
|
|
|
function dd-info() { |
|
echo "$(tput setaf 4)[INFO] ---- $1" |
|
tput init |
|
} |
|
|
|
function dd-message() { |
|
echo "$(tput setaf 5)[MESSAGE] ---- $1" |
|
tput init |
|
} |
|
|
|
function dd-log() { |
|
echo "$(tput setaf 6)[LOG] ---- $1" |
|
tput init |
|
} |