dropshell/README.md
Your Name d71ba38754
Some checks failed
Dropshell Test / Build_and_Test (push) Failing after 12s
ds
2025-05-25 18:14:15 +12:00

55 lines
1.6 KiB
Markdown

# Dropshell
A system management tool for server operations, written in C++.
## Installation
```
curl -fsSL https://gitea.jde.nz/public/dropshell/releases/download/latest/install.sh | bash
```
This installs as dropshell for the local user, with a symbolic link ds.
You'll need to run:
```
~/.local/bin/dropshell edit
~/.local/bin/dropshell install
source ~/.bashrc
```
to configure dropshell and install the local components.
## Remote Server Setup
### Initial setup
Auto setup script which creates a dropshell user, and includes installing docker if not already present:
```
curl -fsSL https://gitea.jde.nz/public/dropshell/releases/download/latest/server_autosetup.sh | sudo bash
```
Manual steps:
1. `apt install curl wget jq`
1. `curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh && rm get-docker.sh`
1. `useradd -m dropshell && usermod -aG docker dropshell && chsh -s /bin/bash dropshell`
1. Put appropriate ssh keys in `/home/dropshell/.ssh/authorized_keys`
1. Test ssh'ing into the server.
### Configure and Use Remote Server
#### Add to local dropshell configuration, and install remote agent
Back on the dropshell host:
1. `dropshell create-server SERVERNAME`
1. `dropshell edit SERVERNAME`
1. `dropshell install SERVERNAME`
#### Install Services
Create and install a service
1. `ds template list` -- see what templates are available to install.
1. `ds create-service SERVERNAME SERVICENAME TEMPLATE`
1. `ds edit SERVERNAME SERVICENAME`
1. Edit other config files if needed.
1. `ds install SERVERNAME SERVICENAME`
1. `ds list`
The service should now be seen to be running.