Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/PenningLabs/lxconsole
LXD Graphical Web Console
https://github.com/PenningLabs/lxconsole
Last synced: 16 days ago
JSON representation
LXD Graphical Web Console
- Host: GitHub
- URL: https://github.com/PenningLabs/lxconsole
- Owner: PenningLabs
- License: agpl-3.0
- Created: 2023-04-24T00:59:12.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-05-19T13:27:08.000Z (7 months ago)
- Last Synced: 2024-05-19T14:35:33.315Z (7 months ago)
- Language: HTML
- Size: 20.3 MB
- Stars: 63
- Watchers: 3
- Forks: 9
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Roadmap: roadmap.txt
Awesome Lists containing this project
- awesome-starred - PenningLabs/lxconsole - LXD Graphical Web Console (others)
README
# lxconsole
This open source application that provides a web-based user interface capable of managing multiple Incus and LXD servers from a single location. Some of the features include:- Connect and manage multiple servers
- Create container and virtual machine instances from either a form or JSON input
- Start, stop, rename, and delete instances
- Copy instances to create new instances
- Create, restore and delete snapshots of instances
- Create instances from snaphots
- Migrate instances between hosts on a cluster
- Download container and virtual machine images to hosts
- Create, edit, apply, and remove profiles
- Create, edit, and delete networks, storage pools, storage volumes, and projects
- Switch between projects on a host
- Interact with instances using web-based terminal
- Create and download backups of an instance to your local computer
- Create local users and groups
- Apply role based access controlLxconsole is a python web application that used flask as a framework.
![screenshot](screenshots/server.png)
This software is currently in BETA TESTING. Please see roadmap.txt for development plans.
Use the following instructions to setup this software on a linux server:
1. Clone the git repository (git clone https://github.com/PenningLabs/lxconsole.git)
2. Install the python packages found in requirements.txt. (pip3 install -r requirements.txt)
3. Using python, run the run.py file. (python3 run.py)
4. Using your browser, visit http://YOURIPADDRESS:5000Instructions on setting up lxconsole as a docker image.
1. Build the docker image (sudo docker build --no-cache -t penninglabs/lxconsole:v0.0.0 .)
2. Run the docker container (sudo docker run -p 5000:5000 --name lxconsole -d penninglabs/lxconsole:v0.0.0)
3. Additionally the flask session secret key can be set using the environment variable LXCONSOLE_SECRET_KEY.
4. Mounted volumes of interest for persistence include the certs (lxconsole client.key and client.crt) and instance (db.sqlite3 database) directories:
- /opt/lxconsole/certs
- /opt/lxconsole/instance