diff --git a/README.md b/README.md index a71f086..1d0dde7 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,13 @@ AnyAppStart
-`Start/Stop/Restart/View Logs` for Docker, Systemd, SSH, VMs and anything else +Universal app to `Start`/`Stop`/`Restart`/`View Logs` for any Type of service (Docker, Systemd, VMs, remote, user scripts) -![Screenshot](https://raw.githubusercontent.com/aceberg/AnyAppStart/refs/heads/main/assets/Screenshot_00.png) +- Backend: `Go`, Frontend: `React`, `TypeScript`, `MobX` +- Small lightweight app, easy to set up and configure +- User can create own types (like LXC or WakeOnLAN) + +![Screenshot](https://raw.githubusercontent.com/aceberg/AnyAppStart/refs/heads/main/assets/Screenshot_05.png) ## More screenshots
@@ -17,3 +21,65 @@
+## Install +
+ Expand + +> :warning: **Warning** +> 1. There is Docker image available, but inside the container only Docker Type will work, which kinda defeats the purpose of this app. So installing binary is recommended. +> 2. There is no built-in auth in this app, so make sure to restrict access to it with firewall and/or SSO (Authelia) or simple [ForAuth](https://github.com/aceberg/ForAuth) + +### Binary +All binary packages can be found in [latest](https://github.com/aceberg/AnyAppStart/releases/latest) release. There are `.deb`, `.rpm`, `.apk` (Alpine Linux) and `.tar.gz` files. + +Supported architectures: `amd64`, `i386`, `arm_v5`, `arm_v6`, `arm_v7`, `arm64`. + +For `amd64` there is a `deb` repo [available](https://github.com/aceberg/ppa) + +### Docker +For demo purpose, mostly. +```sh +docker run --name AnyAppStart \ + -e "TZ=$YOURTIMEZONE" \ + -v ~/.dockerdata/AnyAppStart:/data/AnyAppStart \ + -v /var/run/docker.sock:/var/run/docker.sock \ + -p 8855:8855 \ +aceberg/anyappstart +``` + +
+ +## Config +
+ Expand + +| Variable | Description | Default | +| -------- | ----------- | ------- | +| TZ | Set your timezone for correct time | | +| HOST | Listen address | 0.0.0.0 | +| PORT | Port for web GUI | 8855 | +| THEME | Any theme name from https://bootswatch.com in lowcase or [additional](https://github.com/aceberg/aceberg-bootswatch-fork) | minty | +| COLOR | Background color: light or dark | dark | +| NODEPATH | Path to local node modules | | +
+ +## Options +
+ Expand + +| Key | Description | Default | Systemd (root) | Systemd (user) | +| -------- | ----------- | ------- | ------- | ------- | +| -d | Path to config dir | /data/AnyAppStart | /etc/AnyAppStart | ~/.config/AnyAppStart | +| -n | Path to node modules | | | | + +
+ +## Thanks +
+ Expand + +- All go packages listed in [dependencies](https://github.com/aceberg/DiaryMD/network/dependencies) +- Favicon and logo: [Flaticon](https://www.flaticon.com) +- [Bootstrap](https://getbootstrap.com/) + +
\ No newline at end of file diff --git a/assets/Screenshot_05.png b/assets/Screenshot_05.png new file mode 100644 index 0000000..f139964 Binary files /dev/null and b/assets/Screenshot_05.png differ diff --git a/example/types.yaml b/example/types.yaml new file mode 100644 index 0000000..b7da5b3 --- /dev/null +++ b/example/types.yaml @@ -0,0 +1,30 @@ +Docker: + Logs: docker logs $ITEMNAME + Restart: docker restart $ITEMNAME + Start: docker start $ITEMNAME + State: docker ps --filter status=running | grep $ITEMNAME + Stop: docker stop $ITEMNAME +Systemd: + Logs: sudo systemctl status $ITEMNAME + Restart: sudo systemctl restart $ITEMNAME + Start: sudo systemctl start $ITEMNAME + State: sudo systemctl | grep running | grep $ITEMNAME + Stop: sudo systemctl stop $ITEMNAME +VM: + Logs: sudo journalctl -u libvirtd.service + Restart: sudo virsh rebool $ITEMNAME + Start: sudo virsh start $ITEMNAME + State: sudo virsh list --state-running | grep $ITEMNAME + Stop: sudo virsh shutdown $ITEMNAME +ssh-Docker: + Logs: ssh remote-host-ip -f docker logs $ITEMNAME + Restart: ssh remote-host-ip -f docker restart $ITEMNAME + Start: ssh remote-host-ip -f docker start $ITEMNAME + State: ssh remote-host-ip -f docker ps --filter status=running | grep $ITEMNAME + Stop: ssh remote-host-ip -f docker stop $ITEMNAME +ssh-Systemd: + Logs: ssh remote-host-ip -f sudo systemctl status $ITEMNAME + Restart: ssh remote-host-ip -f sudo systemctl restart $ITEMNAME + Start: ssh remote-host-ip -f sudo systemctl start $ITEMNAME + State: ssh remote-host-ip -f sudo systemctl | grep running | grep $ITEMNAME + Stop: ssh remote-host-ip -f systemctl stop $ITEMNAME