mirror of
https://github.com/linux-odyssey/linux-odyssey.git
synced 2026-11-08 11:30:12 +08:00
feat: init cmd-hook and move terminal-service to services directory
feat: put cmd-hook in container feat: cmd-hook request type, auto restart setup feat: handle ls
This commit is contained in:
1 parent
58b6448c3d
commit
0b08a9a5d9
16 files changed
+343
-21
No files matched your search
@@ -0,0 +1,56 @@
|
||||
# Terminal Service
|
||||
|
||||
A lightweight terminal service for Linux Odyssey player containers, replacing SSH with a more efficient WebSocket-based solution.
|
||||
|
||||
## Features
|
||||
|
||||
- WebSocket-based terminal sessions
|
||||
- PTY (pseudo-terminal) management
|
||||
- Quest command execution
|
||||
- File status and content inspection
|
||||
- Direct integration with Traefik for frontend access
|
||||
|
||||
## Architecture
|
||||
|
||||
The service is designed to be lightweight and efficient, using:
|
||||
|
||||
- gorilla/websocket for WebSocket connections
|
||||
- creack/pty for terminal management
|
||||
- Traefik for reverse proxying
|
||||
|
||||
## Development
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Go 1.24 or later
|
||||
- Docker and Docker Compose
|
||||
- Traefik (for production deployment)
|
||||
|
||||
### Setup
|
||||
|
||||
1. Install dependencies:
|
||||
|
||||
```bash
|
||||
go mod init github.com/linux-odyssey/linux-odyssey/terminal-service
|
||||
go get github.com/gorilla/websocket
|
||||
go get github.com/creack/pty
|
||||
```
|
||||
|
||||
2. Build and run:
|
||||
|
||||
```bash
|
||||
go build
|
||||
./terminal-service
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
Configuration details will be added as the service develops.
|
||||
|
||||
## Security
|
||||
|
||||
The service implements security measures to ensure safe container access and command execution.
|
||||
|
||||
## License
|
||||
|
||||
Same as the main Linux Odyssey project.
|
||||
Reference in new issue
Block a user