aboutsummaryrefslogtreecommitdiff
path: root/setup.sh
diff options
context:
space:
mode:
Diffstat (limited to 'setup.sh')
-rwxr-xr-xsetup.sh38
1 files changed, 36 insertions, 2 deletions
diff --git a/setup.sh b/setup.sh
index 6641234..f584510 100755
--- a/setup.sh
+++ b/setup.sh
@@ -2,5 +2,39 @@
set -eu
-docker compose down >/dev/null
-docker compose up -d
+setup() { packages; firewall; }
+
+start() {
+ cd /opt/project
+ stop;
+ docker compose up -d
+}
+
+stop() {
+ cd /opt/project
+ docker compose down send nginx-proxy redis cgit
+}
+
+packages() {
+ apt install \
+ docker.io docker-buildx docker-compose-v2 \
+ ufw
+}
+
+firewall() {
+ ufw allow 443/tcp
+ ufw allow 80/tcp
+ ufw allow 22
+ ufw enable
+}
+
+update() {
+ apt update || true;
+ cd /opt/project && docker compose build --pull
+}
+
+cmd="$1"; shift;
+case "$cmd" in
+ setup|update|start|stop|firewall|packages) "$cmd" "$@" ;;
+ *) echo "Invalid command: $cmd"; exit 1 ;;
+esac