/$$ /$$ /$$ /$$
|__/ | $$ |__/ | $$
/$$ /$$$$$$$ /$$$$$$ | $$$$$$$ /$$ /$$$$$$
| $$| $$__ $$ |____ $$| $$__ $$| $$|_ $$_/
| $$| $$ \ $$ /$$$$$$$| $$ \ $$| $$ | $$
| $$| $$ | $$ /$$__ $$| $$ | $$| $$ | $$ /$$
| $$| $$ | $$| $$$$$$$| $$$$$$$/| $$ | $$$$//$$
|__/|__/ |__/ \_______/|_______/ |__/ \___/ |__/
Production-ready CLI for configuring and running the Inabit Remote Approver with Docker and nginx.
Current version: v0.1.3
- Guided setup wizard (validates token, configures URL/ports, generates nginx.conf)
- Automatic nginx and Docker Compose configuration
- HTTPS support with auto-detected certificates (PEM or CRT/KEY)
- Health checks and smart troubleshooting
- One-command cleanup and uninstall
Clone the release repository on your remote instance and run the installer:
# Clone the release bundle (contains installer + docker-compose.yml)
git clone https://your-release-repo-url.git approver-cli
cd approver-cli
# Install as current user (no sudo needed)
bash inabit-cli-installation-v1.0.sh
# Or system-wide (requires sudo)
# sudo bash inabit-cli-installation-v1.0.shAfter installation, the global command inabit is available.
# Run the guided setup
inabit setup
# Check status / logs
inabit status
inabit logs
# Manage services
inabit restart
inabit stop
inabit start
# Cleanup everything created by setup (keeps Docker images)
inabit cleanup
# Uninstall the CLI and remove the global "inabit" command
inabit uninstall
# For system-wide installs, use: sudo inabit uninstall1) Start setup
2) Validate login token → obtain access token
3) Configure service port (default 3020)
4) Choose network approach
4.1) Domain → choose 80 (HTTP) or 443 (HTTPS)
- Generate nginx.conf
- Auto-update docker-compose ports
- Detect SSL files in ./ssl (PEM or CRT/KEY)
4.2) IP + Port → generate nginx.conf and map chosen port
5) Validate external URL (health check)
6) Create directories and configuration
7) Start nginx → start approver
8) Verify accessibility
9) Show pairing code and instructions
Notes:
- During setup, HTTP 403 from curl can be normal if Cloudflare blocks non-browser requests; browsers should work.
- The wizard treats 403/502/503 as acceptable during early startup while the approver initializes.
-
Domain
- Port 80 (HTTP):
server { listen 80; }that proxies toapprover:${APPROVER_PORT} - Port 443 (HTTPS):
listen 80;redirects HTTP to HTTPSlisten 443 ssl; http2 on;uses detected cert/key under/etc/nginx/ssl/
- Docker Compose ports exposed automatically:
80:80and443:443
- Port 80 (HTTP):
-
IP + Port
- Single
server { listen <custom>; }with proxy toapprover:${APPROVER_PORT} - Compose port exposed automatically:
<custom>:<custom>
- Single
Supported certificate pairs to place in local ssl/:
cert.pem+key.pemcert.crt+key.keyserver.crt+server.keydomain.crt+domain.key
release/
├── inabit-cli-installation-v1.0.sh # Installer
├── docker-compose.yml # Docker services configuration
└── README.md
- Docker
- Docker Compose
- Bash shell
# Status / Logs
inabit status
inabit logs
# Restart / Cleanup
inabit restart
inabit cleanupThis project is part of the Inabit Remote Approver service.