#!/bin/bash

# SOURCE:
# https://github.com/dockur/macos

exit 1
docker run -it --rm \
--name macos \
--device=/dev/kvm \
--device=/dev/net/tun \
--cap-add NET_ADMIN \
--stop-timeout 120 \
-p 8006:8006 \
-p 5901:5901 \
-p 50922:10022 \
-e VERSION="14" \
-e DISK_SIZE="128G" \
-e RAM_SIZE="8G" \
-e CPU_CORES="4" \
-v /etc/localtime:/etc/localtime:ro \
-v "/home/ztge/Área de trabalho/mequios/:/storage" \
dockurr/macos

#-e EXTRA='-display none -vnc 0.0.0.0:1' \
# --device=/dev/sdb:/disk1 or     --device=/dev/disk/by-uuid/abcd1234-5678-90ef-ghij-klmnopqrstuv:/disk1 \
# -v ./example:/shared

#15	macOS 15	Sequoia
#14	macOS 14	Sonoma
#13	macOS 13	Ventura
#12	macOS 12	Monterey
#11	macOS 11	Big Sur

NOMECONTAINER="docker-macosx"

docker_repo="sickcodes/docker-osx:latest"
imagem="docker-macos"

CustmN2="ip_lan"
CustmN3="dns"
CustmN4="shortname"
CustmN5="ram_gb"
CustmN6="cpu_cores"
CustmN7="disk_size"
CustmN8=""
CustmN9=""
CustmN10=""

VALUE2="0.0.0.0"
VALUE3="1.0.0.1"
VALUE4="sonoma high-sierra mojave catalina big-sur monterey ventura"
VALUE5="8"
VALUE6="4"
VALUE7="256G"
VALUE8=""
VALUE9=""
VALUE10=""

export NOMECONTAINER docker_repo imagem
export CustmN2 CustmN3 CustmN4 CustmN5 CustmN6 CustmN7 CustmN8 CustmN9 CustmN10
export VALUE2 VALUE3 VALUE4 VALUE5 VALUE6 VALUE7 VALUE8 VALUE9 VALUE10

source /root/.index.sh

if [ -f /tmp/common-functions.sh ]; then
  source /tmp/common-functions.sh
else
  echo "ERRO: common-functions.sh não encontrado!"
  exit 1
fi

function set_mkdir {
  sudo mkdir -p /srv/containers/"$NOMECONTAINER"
  sudo chmod -R 777 /srv/containers/"$NOMECONTAINER"
:; }

function docker_create {
  local ip_regex="^([0-9]{1,3}\.){3}[0-9]{1,3}$"

  # Se NAO for numerico, execute como host!
  if [[ ! "$VALUE2" =~ $ip_regex ]]; then

    docker run -d --name="$NOMECONTAINER" --hostname="$NOMECONTAINER" \
    --no-healthcheck --restart=unless-stopped -v /etc/localtime:/etc/localtime:ro \
    --network host \
    --device /dev/kvm \
    --log-driver json-file --log-opt max-size=10m --log-opt max-file=3 \
    -p 5901:5901 \
    -p 50922:10022 \
    -e SHORTNAME="$VALUE4" \
    -e RAM="$VALUE5" \
    -e CORES="$VALUE6" \
    -e SIZE="$VALUE7" \
    -e EXTRA='-display none -vnc 0.0.0.0:1' \
    "$docker_repo"

    echo ""
    echo "REMMINA:"
    echo "VNC: localhost:5901"
    sleep 5

    return
  fi

    docker run -d --name="$NOMECONTAINER" --hostname="$NOMECONTAINER" \
    --no-healthcheck --restart=unless-stopped -v /etc/localtime:/etc/localtime:ro \
    --network macvlan --ip="$VALUE2" --dns="$VALUE3" \
    --device /dev/kvm \
    --log-driver json-file --log-opt max-size=10m --log-opt max-file=3 \
    -p 5901:5901 \
    -p 50922:10022 \
    -e SHORTNAME="$VALUE4" \
    -e RAM="$VALUE5" \
    -e CORES="$VALUE6" \
    -e SIZE="$VALUE7" \
    -e EXTRA='-display none -vnc 0.0.0.0:1' \
    "$docker_repo"

    echo ""
    echo "REMMINA:"
    echo "VNC: $VALUE2:5901"
    sleep 5
}

function docker_extras {

:; }

execute_main

exit 0
