mirror of
https://github.com/guezoloic/serverconfig.git
synced 2026-01-25 03:34:22 +00:00
feat: rework install.sh
This commit is contained in:
@@ -5,22 +5,35 @@ FILENAME="serverconfig"
|
||||
ETC_DIR="/etc/$FILENAME"
|
||||
ENV_FILE="$ETC_DIR/.env"
|
||||
LOG="/var/log/$FILENAME.log"
|
||||
SCRIPT_FILE="/usr/local/bin"
|
||||
|
||||
INFO="\e[34mINFO\e[0m"
|
||||
SUCCESS="\e[32mSUCCESS\e[0m"
|
||||
WARN="\e[33mWARN\e[0m"
|
||||
ERROR="\e[31mERROR\e[0m"
|
||||
DEBUG="\e[35mDEBUG\e[0m"
|
||||
ACTION="\e[36mACTION\e[0m"
|
||||
|
||||
DATETIME_FORMAT="%d-%m-%Y %H:%M:%S"
|
||||
|
||||
info_print() {
|
||||
local message="$1"
|
||||
local level="${2:-1}"
|
||||
local timestamp="[$(date +"$DATETIME_FORMAT")]"
|
||||
local write_log="${3:-true}"
|
||||
|
||||
case $level in
|
||||
1) local level="\e[34mINFO\e[0m";;
|
||||
2) local level="\e[33mWARN\e[0m";;
|
||||
3) local level="\e[31mERROR\e[0m";;
|
||||
4) local level="\e[35mDEBUG\e[0m";;
|
||||
5) local level="\e[36mACTION\e[0m";;
|
||||
1|--) local level=$INFO;;
|
||||
2) local level=$WARN;;
|
||||
3) local level=$ERROR;;
|
||||
4) local level=$DEBUG;;
|
||||
5) local level=$ACTION;;
|
||||
6) local level=$SUCCESS;;
|
||||
*);;
|
||||
esac
|
||||
|
||||
echo -e "$timestamp - $level: $message" | tee -a "$LOG"
|
||||
local output="[$(date +"$DATETIME_FORMAT")] - $level: $message"
|
||||
|
||||
if [ "$write_log" = true ]; then echo -e "$output" | tee -a "$LOG"
|
||||
else echo -e "$output"
|
||||
fi
|
||||
}
|
||||
@@ -1,74 +0,0 @@
|
||||
volumes:
|
||||
etc_wireguard:
|
||||
etc_certs:
|
||||
# save certifcate
|
||||
etc_acme:
|
||||
|
||||
services:
|
||||
|
||||
wg-easy:
|
||||
image: ghcr.io/wg-easy/wg-easy:15
|
||||
container_name: wg-easy
|
||||
networks:
|
||||
- network-container
|
||||
volumes:
|
||||
- etc_wireguard:/etc/wireguard
|
||||
- /lib/modules:/lib/modules:ro
|
||||
ports:
|
||||
- "51820:51820/udp"
|
||||
- "51821:51821/tcp"
|
||||
restart: unless-stopped
|
||||
cap_add:
|
||||
- NET_ADMIN
|
||||
- SYS_MODULE
|
||||
sysctls:
|
||||
- net.ipv4.ip_forward=1
|
||||
- net.ipv4.conf.all.src_valid_mark=1
|
||||
- net.ipv6.conf.all.disable_ipv6=0
|
||||
- net.ipv6.conf.all.forwarding=1
|
||||
- net.ipv6.conf.default.forwarding=1
|
||||
environment:
|
||||
- VIRTUAL_HOST=${WG_HOSTNAME_VPN}
|
||||
- LETSENCRYPT_HOST=${WG_HOSTNAME_VPN}
|
||||
- LETSENCRYPT_EMAIL=${EMAIL}
|
||||
- VIRTUAL_PORT=51821
|
||||
depends_on:
|
||||
- nginx-proxy
|
||||
|
||||
acme-companion:
|
||||
image: nginxproxy/acme-companion
|
||||
container_name: acme-companion
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- DEFAULT_EMAIL=${EMAIL}
|
||||
- NGINX_PROXY_CONTAINER=nginx-proxy
|
||||
depends_on:
|
||||
- nginx-proxy
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
- etc_certs:/etc/nginx/certs
|
||||
- /etc/nginx/vhost.d
|
||||
- ./default_html:/usr/share/nginx/html
|
||||
- etc_acme:/etc/acme.sh
|
||||
networks:
|
||||
- network-container
|
||||
|
||||
nginx-proxy:
|
||||
image: nginxproxy/nginx-proxy:alpine
|
||||
container_name: nginx-proxy
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
volumes:
|
||||
- /var/run/docker.sock:/tmp/docker.sock:ro
|
||||
- etc_certs:/etc/nginx/certs
|
||||
- /etc/nginx/vhost.d
|
||||
- ./default_html:/usr/share/nginx/html
|
||||
networks:
|
||||
- network-container
|
||||
|
||||
|
||||
networks:
|
||||
network-container:
|
||||
external: false
|
||||
Reference in New Issue
Block a user