#!/bin/bash if [ "$EUID" -ne 0 ]; then echo "Please run as root" exit fi # USER echo -e "${PURPLE}${BOLD}Create a user ? (y/N) ${RESET}" read answer if [[ "$answer" == "y" ]]; then . bin/first-install/create_user.sh fi # SSH echo -e "${PURPLE}${BOLD}Setup SSH ? (y/N) ${RESET}" read answer if [[ "$answer" == "y" ]]; then . bin/first-install/setup_ssh.sh fi # FIREWALL AND FAIL2BAN echo -e "${PURPLE}${BOLD}Setup Firewall and Fail2ban ? (y/N) ${RESET}" read answer if [[ "$answer" == "y" ]]; then . bin/first-install/setup_firewall_fail2ban.sh fi # Check if Docker is installed if ! command -v docker &> /dev/null; then echo "${ORANGE}${BOLD}Docker is not installed.${RESET}" exit 1 else echo "${BLUE}${BOLD}Docker is installed.${RESET}" fi # Check if a Caddy container is running if docker ps --filter "ancestor=caddy" --format '{{.Names}}' | grep -q .; then echo -e "${BLUE}${BOLD}A Caddy container is running.${BLUE}${BOLD}" else check_global_const USERNAME CADDYFILE mkdir "/home/${USERNAME}/caddy" mkdir "/home/${USERNAME}/caddy/caddyfile" touch "${CADDYFILE}" cp assets/caddy.docker-compose.yml "/home/${USERNAME}/caddy/docker-compose.yml" docker network create web docker compose -f "/home/${USERNAME}/caddy/docker-compose.yml" up -d fi