Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sidhantpanda/termbridge
https://github.com/sidhantpanda/termbridge
Last synced: 23 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/sidhantpanda/termbridge
- Owner: sidhantpanda
- Created: 2024-08-13T17:07:59.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-08-27T15:03:00.000Z (3 months ago)
- Last Synced: 2024-10-03T22:42:03.830Z (about 1 month ago)
- Language: TypeScript
- Size: 1.01 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Termbridge
Manage terminall access to all your homelab devices from a single web interface.
## Requirements
You'll need a CouchDB instance running to store terminal credentials. You can use a compose file to run both Termbridge and CouchDB.
## Usage
### Docker Run
```bash
docker run -d \
-p 3000:3000 \
--name termbridge \
-e COUCHDB_HOST=you-couch-db-host \
-e COUCHDB_PORT=5984 \
-e COUCHDB_USER=COUCH_USER \
-e COUCHDB_PASS=COUCHDB_PASS \
sidhantpanda/termbridge:latest
```### Docker Compose (with CouchDB)
```yaml
services:
termbridge:
container_name: termbridge
image: sidhantpanda/termbridge
restart: unless-stopped
environment:
- COUCHDB_HOST=couchdb
- COUCHDB_PORT=5984
- COUCHDB_USER=${COUCHDB_USER:-admin}
- COUCHDB_PASS=${COUCHDB_PASS:-password}
ports:
- 3000:3000couchdb:
image: couchdb
container_name: couchdb
restart: unless-stopped
environment:
- COUCHDB_USER=${COUCHDB_USER:-admin}
- COUCHDB_PASSWORD=${COUCHDB_PASS:-password}
volumes:
- ./data/coubchdb:/opt/couchdb/data
ports:
- 5984:5984
```### Docker Compose (with existing CouchDB)
```yaml
services:
termbridge:
container_name: termbridge
image: sidhantpanda/termbridge
restart: unless-stopped
environment:
- COUCHDB_HOST=you-couch-db-host
- COUCHDB_PORT=5984
- COUCHDB_USER=${COUCHDB_USER:-admin}
- COUCHDB_PASS=${COUCHDB_PASS:-password}
ports:
- 3000:3000
```
### Motivations for this project
1. Access from anyone's device
2. Access from any device (phone, tablet, laptops etc...)
3. Run same commands across multiple devices.