Skip to content

Instantly share code, notes, and snippets.

@Shiro-Nek0
Last active October 16, 2023 17:08
Show Gist options
  • Save Shiro-Nek0/13aa72490c4aedcb0badb3bf94bab49d to your computer and use it in GitHub Desktop.
Save Shiro-Nek0/13aa72490c4aedcb0badb3bf94bab49d to your computer and use it in GitHub Desktop.
docker autoinstall
#!/bin/bash
cat << EOF
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣤⣴⣶⡶⠯⠙⠻⠛⠛⠛⠛⠛⠻⠿⢿⣟⣒⣶⠤⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣶⡿⠟⣛⣉⣩⠤⠖⠒⠚⠉⠉⠉⠉⠉⢙⣛⡗⠒⠲⠤⢬⣉⠓⠻⢽⣲⢤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣶⣿⠟⣫⡵⠖⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⠏⢰⠂⠀⠈⣧⠀⠈⠉⠓⠦⣌⡙⠿⣿⣶⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⠟⣫⠴⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣦⡘⠳⣤⣤⠟⠀⠀⠀⠀⠀⠀⠙⠲⣬⡙⠿⣷⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⢀⣴⣿⢟⣥⠞⠁⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠠⢤⣉⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠲⣌⠻⢿⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⣠⣿⠟⣱⠋⠁⠀⠀⠀⠀⡞⠀⠀⠀⣀⣠⠤⠤⠤⠴⢤⣠⠤⠶⠲⠦⢤⣙⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣄⠀⠈⠷⣄⡙⢿⣦⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⣰⣿⢿⣌⡻⣦⣀⠀⠀⠠⡀⢁⡤⠖⣛⠉⠀⠀⣀⡴⠚⠉⠀⠀⠀⠀⠀⠀⠈⠻⣦⣄⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠉⠉⢳⡔⠻⢿⣮⡻⣷⣄⠀⠀⠀⠀⠀
⠀⠀⣼⣿⠉⢸⡟⠻⣷⣭⡳⢦⣠⠖⠋⠴⠊⠁⠀⣠⠞⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠂⠀⠈⠉⢓⣦⣄⠀⠀⣨⠡⢀⡀⠘⣟⡆⠀⣿⣳⣌⢿⣧⡀⠀⠀⠀
⠀⠀⠉⣻⡗⣯⠀⠀⠀⠉⣻⡿⠃⠀⣀⡀⠀⢠⡞⣉⠉⠒⡒⠒⠤⠄⣀⠀⠀⠀⠀⢀⡖⠀⠀⠀⠀⢞⣉⡀⠈⠳⢾⡁⠀⠀⢣⠰⣭⣤⣴⠋⡄⢹⢧⡹⣷⡀⠀⠀
⠀⠀⣼⠋⠀⠙⣇⠀⠀⣴⠏⢀⡴⠋⠁⠀⠀⡼⠁⠀⡤⣼⠉⠉⠑⠒⢀⡜⠁⢀⡴⡿⢠⠀⠀⠀⠀⠀⠀⠙⠲⠄⠀⠙⣦⡀⢈⠇⣸⢡⣸⣦⣿⣿⣨⣧⢹⣿⡄⠀
⠀⠀⠘⢶⣦⡾⠃⠀⣸⠃⣰⠋⠀⠀⠀⠀⣼⠁⠀⢰⣷⠇⠀⠀⠀⢀⡞⠀⢠⠞⢀⡇⣸⠀⢸⠀⢀⠀⠀⠀⠀⠀⠀⠀⠈⠳⡴⢌⣼⣦⣵⠿⣛⣭⣵⠞⠻⣟⠁⠀
⠀⠀⣰⠟⠛⢳⡀⠀⡟⢰⠃⠀⠀⠀⡔⣰⣿⠒⠒⣾⣿⢤⡀⠀⠀⣸⠁⢠⠏⢀⣸⣄⣿⣀⠈⢧⠀⠀⠀⠀⣀⣀⠀⠀⠀⠀⠹⣟⣫⣥⡶⠿⠛⠉⢿⣄⢀⣿⠀⠀
⠀⢰⠏⠀⠀⠀⢻⠀⡇⡏⠀⠀⠀⠀⣟⡟⠘⣦⣀⣏⢸⡀⣁⣆⠀⣿⡄⡟⠀⠉⠈⣇⡏⢧⠉⠙⢷⣄⠀⠀⣧⠈⠙⢦⡀⠀⠀⠹⣿⠁⠀⠀⠀⠀⠈⢻⠸⣇⠀⠀
⠀⢸⠀⠀⠀⢀⣼⠀⢷⣧⠀⠀⠀⠀⣿⣷⠟⣋⣭⣽⠻⣿⠋⠉⠷⢇⢳⡇⠀⢀⣤⣼⣿⣌⣳⣄⠘⢯⡃⠀⠈⠃⠀⠀⠹⡄⠀⠀⢹⣇⠀⠀⠀⠀⢠⣿⠀⢈⡧⠀
⢀⣼⣄⣤⣤⠞⠁⠀⠘⢿⡆⠀⠀⢀⣿⠁⢰⠛⠛⣧⣰⡞⠀⠀⠀⠀⠀⠀⠐⣫⣷⣶⡶⠉⠻⣿⡷⢤⣳⣄⠀⠀⠀⠀⠀⣷⠀⠀⠀⣿⡄⠀⠀⠀⠈⢻⡆⡾⠃⠀
⠀⠀⠀⠉⠁⠀⠀⠀⢀⣴⠟⠋⠀⣸⡇⠀⣿⠰⣤⣼⣿⠇⠀⠀⠀⠀⠀⠀⢸⡏⠀⢸⢷⣤⡆⠈⢿⡄⢻⠈⠓⢦⣄⣀⣠⠟⠀⠀⠀⢸⡇⠀⠀⠀⢠⠞⠉⠳⡄⠀
⠀⠀⠀⠀⠀⠀⠀⢰⡏⠀⠀⠀⣼⢋⠀⡀⠘⢧⣤⣼⠟⠀⠀⠀⠀⠀⠀⠀⢸⡇⠳⠦⠤⣽⠇⠀⢸⡇⢸⠀⢠⠄⠀⠉⠀⠀⠀⠀⠀⣼⠃⠀⠀⢀⡏⠀⠀⠀⠹⡄
⠀⠀⠀⠀⠀⢀⣼⣿⠀⠀⠀⢰⠟⣟⡾⡽⣽⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⢶⠶⠶⢋⠀⠀⠚⠀⣸⣠⠷⢄⠀⠀⠀⠀⠀⠀⢠⡟⠀⠀⠀⢸⡇⠀⠀⠀⢀⡇
⠀⠀⠀⠀⢀⣿⠁⢹⡄⠀⠀⢸⠀⠙⠛⠙⠙⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢯⢯⢯⢻⣷⡀⠀⠠⠟⢁⡤⡄⢳⠀⠀⠀⠀⢀⣿⠁⠀⠀⠀⠈⣷⡀⠀⣀⡞⠀
⠀⠀⠀⠀⠸⣿⡶⠞⠀⣠⣄⠘⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠛⠧⠿⠷⠊⠀⠀⣭⠴⢁⡾⠀⠀⠀⢀⣿⠁⠀⠀⠀⠀⠀⠀⢹⡞⠉⠀⠀
⠀⠀⠀⠀⠀⠈⠛⢷⠛⠛⠁⢀⡎⠳⣄⠀⠀⠀⠀⠀⠸⣟⠉⠉⠉⢒⡶⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡤⠤⠤⠖⠋⠀⠀⠀⢀⡞⣿⠀⠀⠀⠀⠀⠀⠀⠀⠁⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠈⠻⣶⣤⡞⠀⠀⠈⠓⠦⣄⣀⠀⠀⠉⠓⠒⠚⠉⠀⠀⠀⠀⠀⠀⠀⢀⣠⠖⠋⠀⠀⠀⠀⢠⠆⠀⠀⣼⠀⠈⠻⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⢀⣠⡤⠶⢻⡏⠀⠀⠀⠀⡆⠀⠀⠉⢙⣶⣦⠤⣄⣀⠀⠀⣀⣀⣤⢤⡶⠾⣍⣀⠀⠀⠀⠀⠀⣰⠋⠀⠀⠀⢇⠀⠀⠀⠈⢳⣄⡀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⣰⠞⠁⠀⠐⠁⠀⠀⠀⠀⣸⠁⠀⢀⡾⣍⢤⡈⠳⣦⢊⡇⡾⣛⡩⠴⣛⡀⢀⣠⠼⢿⡄⠀⠀⠀⡇⠀⠀⠀⠀⠈⠀⠀⠀⠀⠀⠙⣷⡀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⣼⠃⠀⠀⠀⠀⠀⠀⠀⣀⡼⡁⠀⢀⡾⠁⣙⠟⠺⢟⣗⣺⣦⣽⣗⣞⣟⢓⠟⢿⠁⠀⠀⢷⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⡀⠀⠀⠀⠀⠀
-Docker
-Portainer
-Node-Red
-EMQX (mqtt)
-MySql
EOF
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
# Add the repository to Apt sources:
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# Install Portainer
echo "Installing Portainer"
sudo docker volume create portainer_data
sudo docker run -d -p 8000:8000 -p 9000:9000 -p 9443:9443 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
# Install node-red
echo "Installing node-red"
sudo docker run -d -p 1880:1880 --name=nodered --restart=always -v node_red_data:/data nodered/node-red:latest
# Install EMQX (mqtt)
echo "Installing EMQX"
sudo docker run -d -p 18083:18083 -p 1883:1883 --name=emqx --restart=always emqx/emqx:latest
#install mySql
echo "Installing MySql"
sudo docker run -d -p 3306:3306 --name=mysql -e MYSQL_DATABASE=iotDB -e MYSQL_USER=iot -e MYSQL_PASSWORD=123456 -e MYSQL_ROOT_PASSWORD=123456 mysql:latest
SERVERIP=$(ip addr show | grep -E 'inet .* zt' | awk '{print $2}' | sed 's/\/16//')
cat << EOF
⠀⠀⠀⣠⠤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⠀⠀
⠀⠀⡜⠁⠀⠈⢢⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⠋⠷⠶⠱⡄
⠀⢸⣸⣿⠀⠀⠀⠙⢦⡀⠀⠀⠀⠀⠀⠀⠀⢀⡴⠫⢀⣖⡃⢀⣸⢹
⠀⡇⣿⣿⣶⣤⡀⠀⠀⠙⢆⠀⠀⠀⠀⠀⣠⡪⢀⣤⣾⣿⣿⣿⣿⣸
⠀⡇⠛⠛⠛⢿⣿⣷⣦⣀⠀⣳⣄⠀⢠⣾⠇⣠⣾⣿⣿⣿⣿⣿⣿⣽
⠀⠯⣠⣠⣤⣤⣤⣭⣭⡽⠿⠾⠞⠛⠷⠧⣾⣿⣿⣯⣿⡛⣽⣿⡿⡼
⠀⡇⣿⣿⣿⣿⠟⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⠻⣿⣿⣮⡛⢿⠃
⠀⣧⣛⣭⡾⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⣿⣷⣎⡇
⠀⡸⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⢿⣷⣟⡇
⣜⣿⣿⡧⠀⠀⠀⠀⠀⡀⠀⠀⠀⠀⠀⠀⣄⠀⠀⠀⠀⠀⣸⣿⡜⡄
⠉⠉⢹⡇⠀⠀⠀⢀⣞⠡⠀⠀⠀⠀⠀⠀⡝⣦⠀⠀⠀⠀⢿⣿⣿⣹
⠀⠀⢸⠁⠀⠀⢠⣏⣨⣉⡃⠀⠀⠀⢀⣜⡉⢉⣇⠀⠀⠀⢹⡄
⠀⠀⡾⠄⠀⠀⢸⣾⢏⡍⡏⠑⠆⠀⢿⣻⣿⣿⣿⠀⠀⢰⠈⡇⠀⠀
⠀⢰⢇⢀⣆⠀⢸⠙⠾⠽⠃⠀⠀⠀⠘⠿⡿⠟⢹⠀⢀⡎⠀⡇⠀⠀
⠀⠘⢺⣻⡺⣦⣫⡀⠀⠀⠀⣄⣀⣀⠀⠀⠀⠀⢜⣠⣾⡙⣆⡇⠀⠀
⠀⠀⠀⠙⢿⡿⡝⠿⢧⡢⣠⣤⣍⣀⣤⡄⢀⣞⣿⡿⣻⣿⠞⠀⠀⠀
⠀⠀⠀⢠⠏⠄⠐⠀⣼⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠳⢤⣉⢳⠀⠀⠀
⢀⡠⠖⠉⠀⠀⣠⠇⣿⡿⣿⡿⢹⣿⣿⣿⣿⣧⣠⡀⠀⠈⠉⢢⡀⠀
⢿⠀⠀⣠⠴⣋⡤⠚⠛⠛⠛⠛⠛⠛⠛⠛⠙⠛⠛⢿⣦⣄⠀⢈⡇⠀
⠈⢓⣤⣵⣾⠁⣀⣀⠤⣤⣀⠀⠀⠀⠀⢀⡤⠶⠤⢌⡹⠿⠷⠻⢤⡀
⢰⠋⠈⠉⠘⠋⠁⠀⠀⠈⠙⠳⢄⣀⡴⠉⠀⠀⠀⠀⠙⠂⠀⠀⢀⡇
⢸⡠⡀⠀⠒⠂⠐⠢⠀⣀⠀⠀⠀⠀⠀⢀⠤⠚⠀⠀⢸⣔⢄⠀⢾⠀
⠀⠑⠸⢿⠀⠀⠀⠀⢈⡗⠭⣖⡒⠒⢊⣱⠀⠀⠀⠀⢨⠟⠂⠚⠋⠀
⠀⠀⠀⠘⠦⣄⣀⣠⠞⠀⠀⠀⠈⠉⠉⠀⠳⠤⠤⡤⠞
EOF
echo "Instalacion terminada!"
echo
echo "credenciales MySQL"
echo "DB: iotDB"
echo "User: iot"
echo "Pass: 123456"
echo
echo "Credenciales EMQX"
echo "User: admin"
echo "Pass: public"
echo
echo "Portainer URL: https://$SERVERIP:9000"
echo "Node-Red URL: http://$SERVERIP:1880"
echo "EMQX URL: http://$SERVERIP:18083"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment