Compare commits

...

35 Commits

Author SHA1 Message Date
f00fdafc10 Update go-update 2023-08-14 10:32:39 +07:00
e43e310aab Fixed new go fetch version with time 2023-08-14 10:18:32 +07:00
97d9f692e2 Update docker-compose.sh 2023-05-19 19:27:04 +07:00
c90676bcb1 Update go-update 2023-05-05 08:26:19 +07:00
01b5be31d6 Add 'traefik-docker.sh' 2023-04-06 08:56:26 +07:00
6c555627a4 Update 'haproxy.sh' 2023-03-07 08:23:24 +07:00
db7d982197 Add 'haproxy.sh' 2023-03-07 08:21:48 +07:00
94da6ea291 Update 'docker-compose.sh' 2023-03-06 21:20:34 +07:00
f52255469f Update 'doker-compose.sh' 2023-03-06 19:06:31 +07:00
0662b930c4 Add 'go-update' 2023-01-27 09:07:32 +07:00
5ee15c3fba Update 'doker-compose.sh' 2023-01-07 12:01:16 +07:00
cf9bbd3a2b Updated to v2.14.0 2022-12-06 19:41:18 +07:00
e6a95f7a9d Add 'amzlinux.sh' 2022-10-06 15:04:08 +07:00
68c1fcf453 Update 'linux-first.sh' 2022-03-14 20:59:17 +07:00
70923b291d Update 'linux-first.sh' 2022-03-14 20:57:48 +07:00
15a703fe4e Add linux first 2022-03-14 20:55:42 +07:00
a05d1dcad6 Add mysql install 2022-01-20 10:55:34 +07:00
b528d95761 Update 'apt-mirror.sh' 2021-11-25 19:43:46 +07:00
0af785f7e9 Update 'README.md' 2021-10-20 09:12:14 +07:00
0e9e608705 Task: Add focal script for apt mirror 2021-09-03 11:23:50 +07:00
ff9eb7c8a6 Add 'apt-focal.sh' 2021-09-03 11:23:06 +07:00
d742ec0d58 Update 'README.md' 2021-09-03 11:15:33 +07:00
f5972efe2b Update 'apt-mirror.sh' 2021-09-03 11:13:10 +07:00
e6c7272fb8 Update 'apt-mirror.sh' 2021-09-03 11:12:56 +07:00
cb96629c63 Update 'apt-mirror.sh' 2021-09-03 11:12:31 +07:00
ce712ff8d9 Update 'apt-mirror.sh' 2021-09-03 11:11:11 +07:00
115d8fabc2 Update 'apt-mirror.sh' 2021-09-03 11:02:58 +07:00
0ea911ed3b Update 'apt-mirror.sh' 2021-09-03 10:59:26 +07:00
a678330650 Task: Add Apt Mirror script 2021-09-03 10:57:55 +07:00
77cf7b25bb Task: Add rabbitmq server setup script for ubuntu 20 2021-08-09 09:34:23 +07:00
67e29d34bc Task: Add script for ufw allow from CUBETIQ public network 2021-08-01 10:12:01 +07:00
b483394051 Task: Add docker compose install script 2021-07-30 17:49:37 +07:00
d26dc81604 Add install script for moodle 2021-04-28 12:37:46 +07:00
e0705bec27 Add docker compose for moodle 2021-04-28 12:06:48 +07:00
d713066d5d Add moodle docker compose script 2021-04-28 11:56:04 +07:00
15 changed files with 349 additions and 0 deletions

View File

@@ -1 +1,15 @@
# Script of You Running # Script of You Running
```sh
curl -s -L https://sh.osa.cubetiqs.com/apt-mirror.sh | sudo bash
```
### Fix APT Public Key
```text
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 7EA0A9C3F273FCD8
```
```shell
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7EA0A9C3F273FCD8
sudo apt update
```

17
amzlinux.sh Normal file
View File

@@ -0,0 +1,17 @@
#!/bin/bash -e
sudo yum update
sudo yum install docker -y
sudo usermod -a -G docker $USER
newgrp docker
# Docker Compose
wget https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)
sudo mv docker-compose-$(uname -s)-$(uname -m) /usr/local/bin/docker-compose
sudo chmod -v +x /usr/local/bin/docker-compose
sudo systemctl enable --now docker.service
sudo systemctl status docker.service

21
apt-focal.sh Normal file
View File

@@ -0,0 +1,21 @@
#!/bin/sh -e
tee -a sources.list << EOF
deb http://apt.internal.cubetiqs.com/ubuntu focal main restricted
deb http://apt.internal.cubetiqs.com/ubuntu focal-updates main restricted
deb http://apt.internal.cubetiqs.com/ubuntu focal universe
deb http://apt.internal.cubetiqs.com/ubuntu focal-updates universe
deb http://apt.internal.cubetiqs.com/ubuntu focal multiverse
deb http://apt.internal.cubetiqs.com/ubuntu focal-updates multiverse
deb http://apt.internal.cubetiqs.com/ubuntu focal-backports main restricted universe multiverse
deb http://apt.internal.cubetiqs.com/ubuntu focal-security main restricted
deb http://apt.internal.cubetiqs.com/ubuntu focal-security universe
deb http://apt.internal.cubetiqs.com/ubuntu focal-security multiverse
EOF
mv /etc/apt/sources.list /etc/apt/sources.list.bak
mv sources.list /etc/apt/sources.list
echo ""
echo "======================= New Sources ======================="
cat /etc/apt/sources.list

23
apt-mirror.sh Normal file
View File

@@ -0,0 +1,23 @@
#!/bin/sh -e
UBUNTU_VERSION=$(lsb_release -cs)
tee -a sources.list << EOF
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION} main restricted
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION}-updates main restricted
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION} universe
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION}-updates universe
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION} multiverse
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION}-updates multiverse
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION}-backports main restricted universe multiverse
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION}-security main restricted
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION}-security universe
deb https://mirror.ctdn.net/ubuntu ${UBUNTU_VERSION}-security multiverse
EOF
mv /etc/apt/sources.list /etc/apt/sources.list.bak
mv sources.list /etc/apt/sources.list
echo ""
echo "======================= New Sources ======================="
cat /etc/apt/sources.list

4
docker-compose.sh Normal file
View File

@@ -0,0 +1,4 @@
#!/bin/sh
sudo curl -L "https://github.com/docker/compose/releases/download/v2.18.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

70
go-update Normal file
View File

@@ -0,0 +1,70 @@
#!/bin/sh -e
CURRENT_GO_PATH=$(which go)
if [ -z "$CURRENT_GO_PATH" ]; then
echo "Go is not installed!"
CURRENT_GO_PATH=$(echo $GOROOT)
if [ -z "$CURRENT_GO_PATH" ]; then
CURRENT_GO_PATH="/usr/local/go"
else
CURRENT_GO_PATH="$CURRENT_GO_PATH"
fi
echo "Installing Go in $CURRENT_GO_PATH"
else
echo "Found Go in $CURRENT_GO_PATH"
echo "Updating Go in $CURRENT_GO_PATH"
fi
BASE_GO_PATH=$(echo $CURRENT_GO_PATH | sed 's/\/bin\/go//g')
ROOT_GO_PATH=$(echo $BASE_GO_PATH | sed 's/\/go//g')
# echo "Current Go path: $CURRENT_GO_PATH | Base Go path: $BASE_GO_PATH | Root Go path: $ROOT_GO_PATH"
#UPDATE_GO_VERSION=${1:-}
FETCH_FROM_GO_VERSION=$(curl -s https://go.dev/VERSION?m=text | awk 'NR==1 {sub(/^go/, ""); print}')
# Output:
# go1.21.0
# time 2023-08-04T20:14:06Z
UPDATE_GO_VERSION=$(echo $FETCH_FROM_GO_VERSION)
echo "Latest fetched from: https://go.dev/VERSION => $UPDATE_GO_VERSION"
# UPDATE_GO_VERSION=$(echo $FETCH_FROM_GO_VERSION | sed 's/^go//')
if [ -z "$UPDATE_GO_VERSION" ]; then
echo "Usage: $0 <go-version> | Example: $0 1.20.0"
exit 1
fi
CURRENT_GO_VERSION=$(go version | awk '{print $3}')
echo "Checking version $UPDATE_GO_VERSION in local..."
if [ "go$UPDATE_GO_VERSION" = "$CURRENT_GO_VERSION" ]; then
echo "Version $UPDATE_GO_VERSION is already installed!"
exit 0
else
echo "New version $UPDATE_GO_VERSION is available!"
fi
GO_FILE="go${UPDATE_GO_VERSION}.linux-amd64.tar.gz"
GO_DL_URL=https://go.dev/dl/$GO_FILE
echo "Downloading last version from $GO_DL_URL"
sudo wget $GO_DL_URL -O /tmp/$GO_FILE
echo "Remove old version: $CURRENT_GO_VERSION from $BASE_GO_PATH"
sudo rm -rf $BASE_GO_PATH
echo "Extracting new version: $UPDATE_GO_VERSION"
sudo tar -C $ROOT_GO_PATH -xzf /tmp/$GO_FILE
echo "Removing downloaded file: $GO_FILE"
sudo rm -rf /tmp/$GO_FILE
echo "Verifying new version: $UPDATE_GO_VERSION"
if [ "go$UPDATE_GO_VERSION" = "$(go version | awk '{print $3}')" ]; then
echo "New version $UPDATE_GO_VERSION is installed!"
else
echo "New version $UPDATE_GO_VERSION is not installed!"
fi
echo "Thanks for using go-update!"

6
haproxy.sh Normal file
View File

@@ -0,0 +1,6 @@
#!/bin/bash -e
sudo apt update && sudo apt upgrade -y
sudo apt-get install --no-install-recommends software-properties-common -y
sudo add-apt-repository ppa:vbernat/haproxy-2.7
sudo apt-get install haproxy=2.7.\* -y

9
linux-first.sh Normal file
View File

@@ -0,0 +1,9 @@
#!/bin/sh -e
sudo apt update && sudo apt install zsh unzip zip -y
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
curl -s "https://get.sdkman.io" | bash
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

39
moodle/docker-compose.yml Normal file
View File

@@ -0,0 +1,39 @@
version: '2'
services:
mariadb:
image: docker.io/bitnami/mariadb:10.5
environment:
- ALLOW_EMPTY_PASSWORD=yes
- MARIADB_USER=bn_moodle
- MARIADB_DATABASE=bitnami_moodle
- MARIADB_CHARACTER_SET=utf8mb4
- MARIADB_COLLATE=utf8mb4_unicode_ci
volumes:
- 'mariadb_data:/bitnami/mariadb'
moodle:
image: docker.io/bitnami/moodle:3
ports:
- '8075:8080'
- '8076:8443'
environment:
- MOODLE_DATABASE_HOST=mariadb
- MOODLE_DATABASE_PORT_NUMBER=3306
- MOODLE_DATABASE_USER=bn_moodle
- MOODLE_DATABASE_NAME=bitnami_moodle
- ALLOW_EMPTY_PASSWORD=yes
- MOODLE_USERNAME=cubetiq
- MOODLE_PASSWORD=cubetiq
- MOODLE_EMAIL=admin@cubetiqs.com
- MOODLE_SITE_NAME="CUBETIQ LMS"
volumes:
- 'moodle_data:/bitnami/moodle'
- 'moodledata_data:/bitnami/moodledata'
depends_on:
- mariadb
volumes:
mariadb_data:
driver: local
moodle_data:
driver: local
moodledata_data:
driver: local

View File

@@ -0,0 +1,5 @@
#!/bin/bash -e
curl -sSL https://raw.githubusercontent.com/bitnami/bitnami-docker-moodle/master/docker-compose.yml > docker-compose.yml
docker-compose up -d

24
moodle/moodle-setup.sh Normal file
View File

@@ -0,0 +1,24 @@
docker network create moodle-network
docker volume create --name mariadb_data
docker run -d --name mariadb \
--env ALLOW_EMPTY_PASSWORD=yes \
--env MARIADB_USER=bn_moodle \
--env MARIADB_PASSWORD=bitnami \
--env MARIADB_DATABASE=bitnami_moodle \
--network moodle-network \
--volume mariadb_data:/bitnami/mariadb \
bitnami/mariadb:latest
docker volume create --name moodle_data
docker run -d --name moodle \
-p 8075:8080 -p 8076:8443 \
--env ALLOW_EMPTY_PASSWORD=yes \
--env MOODLE_DATABASE_USER=bn_moodle \
--env MOODLE_DATABASE_PASSWORD=bitnami \
--env MOODLE_DATABASE_NAME=bitnami_moodle \
--network moodle-network \
--volume moodle_data:/bitnami/moodle \
bitnami/moodle:latest

7
mysql-8.sh Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/sh -e
sudo apt update
sudo apt install mysql-server
sudo mysql_secure_installation

34
rabbitmq-setup.sh Normal file
View File

@@ -0,0 +1,34 @@
#!/bin/bash -e
sudo apt install apt-transport-https -y
wget -O- https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc | sudo apt-key add -
wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
echo "deb https://dl.bintray.com/rabbitmq-erlang/debian focal erlang-22.x" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
sudo apt install rabbitmq-server -y
sudo systemctl enable rabbitmq-server.service
sudo systemctl is-enabled rabbitmq-server.service
# Enable Management and WebMQTT
sudo rabbitmq-plugins enable rabbitmq_management
sudo rabbitmq-plugins enable rabbitmq_web_mqtt
: '
loopback_users.guest = false
listeners.tcp.default = 5672
management.tcp.port = 15672
mqtt.default_user = demo
mqtt.default_pass = demo
mqtt.vhost = /
mqtt.exchange = amq.topic
# 24 hours by default
mqtt.subscription_ttl = 86400000
mqtt.prefetch = 10
'
# sudo nano /etc/rabbitmq/rabbitmq.conf
sudo systemctl restart rabbitmq-server.service
sudo systemctl status rabbitmq-server.service

72
traefik-docker.sh Normal file
View File

@@ -0,0 +1,72 @@
#!/bin/bash
NAME=traefik
NETWORK_NAME=traefik-net
TRAEFIK_IP=172.19.0.5
TRAEFIK_HTTP=80
TRAEFIK_HTTPS=443
TRAEFIK_CONFIG=traefik.yml
cat <<EOF> $TRAEFIK_CONFIG
global:
checkNewVersion: true
sendAnonymousUsage: true
entryPoints:
web:
address: ':80'
websecure:
address: ':443'
metrics:
address: ':8082'
accessLog: {}
tracing: {}
metrics:
prometheus:
entryPoint: metrics
addEntryPointsLabels: true
addServicesLabels: true
addRoutersLabels: true
log:
filePath: /data/log/traefik.log
format: json
api:
insecure: true
dashboard: true
providers:
docker:
network: $NETWORK_NAME
exposedByDefault: false
watch: true
certificatesResolvers:
myresolver:
acme:
email: ''
storage: /data/acme.json
httpChallenge:
entryPoint: web
EOF
docker rm -f $NAME
if [ ! "$(docker network ls | grep $NETWORK_NAME)" ]; then
docker network create --subnet=172.19.0.0/24 --gateway=172.19.0.1 $NETWORK_NAME
fi
docker run -d -p 8082:8082 -p 8080:8080 -p $TRAEFIK_HTTP:80 -p $TRAEFIK_HTTPS:443 \
--restart always --name $NAME \
--ip $TRAEFIK_IP \
--network $NETWORK_NAME \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $PWD/data:/data \
-v $PWD/traefik.yml:/etc/traefik/traefik.yml traefik:v3.0

4
ufw-allow-local.sh Normal file
View File

@@ -0,0 +1,4 @@
#!/bin/sh
sudo ufw allow from 175.100.65.215
sudo ufw allow from 58.97.201.175