mirror of
https://github.com/idanoo/fediservices.nz-infra
synced 2025-07-02 14:22:15 +00:00
Create infra
This commit is contained in:
parent
1bb150d44e
commit
2d32a3c4bb
9 changed files with 278 additions and 34 deletions
|
@ -1,2 +1,61 @@
|
|||
#!/bin/bash
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Install Packages / Update
|
||||
sudo apt update -q
|
||||
sudo apt install -qy jq unzip htop net-tools
|
||||
sudo apt -y upgrade
|
||||
|
||||
# Install awscli
|
||||
curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip" -o "awscliv2.zip"
|
||||
unzip awscliv2.zip
|
||||
sudo ./aws/install
|
||||
|
||||
# Install Docker
|
||||
curl -sSL https://get.docker.com/ | sh
|
||||
|
||||
# Get / cache instance meta data
|
||||
sudo wget -N -i http://169.254.169.254/latest/meta-data/ -P /etc/amazon-ec2
|
||||
METADATA=$(curl http://169.254.169.254/latest/dynamic/instance-identity/document)
|
||||
INSTANCE_ID=$(curl -s http://169.254.169.254/latest/meta-data/instance-id)
|
||||
ACC_ID=$(echo $METADATA | jq -r .accountId)
|
||||
|
||||
# Set vars
|
||||
device="xvdf"
|
||||
volume="${volume}"
|
||||
|
||||
# Detect if volume is attached
|
||||
while [[ ! $(/bin/lsblk) == *$device* ]]; do
|
||||
# Detect if we are on a Nitro based VM and then lookup nvme device
|
||||
if [ -f /sys/devices/virtual/dmi/id/board_asset_tag ]; then
|
||||
sudo apt install -qy nvme-cli
|
||||
for line in $(/bin/lsblk | awk '{print $1}' | /bin/grep ^nvme);
|
||||
do
|
||||
if [[ $(sudo /usr/sbin/nvme id-ctrl -v /dev/$line | grep $${volume/-/} | wc -c) -ne 0 ]]; then
|
||||
device=$line
|
||||
fi
|
||||
done
|
||||
fi
|
||||
done;
|
||||
|
||||
# Mount data folder and bootstrap
|
||||
sudo mkdir ${data_root}
|
||||
if [[ $(blkid /dev/$device | head -c1 | wc -c) -eq 0 ]]; then
|
||||
sudo mkfs.ext4 -E lazy_itable_init=0,lazy_journal_init=0 /dev/$device
|
||||
fi
|
||||
|
||||
# Auto expand FS before mount
|
||||
sudo mount -t ext4 -o noatime,data=writeback,barrier=0,nobh,errors=remount-ro /dev/$device ${data_root}
|
||||
sudo resize2fs /dev/$device
|
||||
sudo chown ubuntu:ubuntu -R ${data_root}
|
||||
|
||||
# Run it!
|
||||
docker run -d \
|
||||
--restart=always \
|
||||
-p 3001:3001 \
|
||||
-v ${data_root}/uptime-kuma:/app/data \
|
||||
--name uptime-kuma \
|
||||
louislam/uptime-kuma
|
||||
|
||||
sudo snap start amazon-ssm-agent
|
Loading…
Add table
Add a link
Reference in a new issue