Web interface to manage multiple instance of lxd

Last update: May 18, 2022
Comments
  • 1. Centos 7 or Curl 7.29.0 breaks lxd mosaic

    Describe the bug Added a second LXD host to interface

    To Reproduce Steps to reproduce the behavior:

    1. Add a second host to LXD mosaic

    Screenshots Screen Shot 2019-05-07 at 11 57 10 AM

    This is reproducible for me. If I look at the pm2 logs, all I see is this:

    {"host":"https:\/\/lxd-a01.XXXX.lan:8443","offline":true}
    {"host":"https:\/\/lxd-a01.XXXX.lan:8443","offline":false}
    

    And there's no mention of the second host I added. Looking at the mysql database, both hosts are entered correctly.

    [email protected]:LXD_Manager> select * from Hosts;
    +---------+-------------------------------+---------------------------+-----------------------+----------------------+-------------+------------+
    | Host_ID | Host_Url_And_Port             | Host_Cert_Path            | Host_Cert_Only_File   | Host_Key_File        | Host_Online | Host_Alias |
    +---------+-------------------------------+---------------------------+-----------------------+----------------------+-------------+------------+
    |       1 | https://lxd-a01.XXXX.lan:8443 | lxd-a01.XXXX.lan.combined | lxd-a01.XXXX.lan.cert | lxd-a01.airg.lan.key |           1 | NULL       |
    |       2 | https://lxd-b01.XXXX.lan:8443 | lxd-b01.XXXX.lan.combined | lxd-b01.XXXX.lan.cert | lxd-b01.airg.lan.key |           1 | NULL       |
    +---------+-------------------------------+---------------------------+-----------------------+----------------------+-------------+------------+
    

    I ran into this issue on a previous version of this software, but with the latest version, I'm still having this problem. Any suggestions on debugging this further?

    Reviewed by trenb at 2019-05-07 19:02
  • 2. Scheduled backups fail (backp is size 0)

    This is where I'm starting from:

    [email protected]:/var/www/LxdMosaic$ n ls
    node/10.0.0
    [email protected]:/var/www/LxdMosaic$ sudo npm i
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
    
    audited 630 packages in 6.565s
    
    4 packages are looking for funding
      run `npm fund` for details
    
    found 1 low severity vulnerability
      run `npm audit fix` to fix them, or `npm audit` for details
    [email protected]:/var/www/LxdMosaic$ sudo pm2 log 0
    [TAILING] Tailing last 15 lines for [0] process (change the value with --lines option)
    /home/lai/.pm2/logs/events-error.log last 15 lines:
    /home/lai/.pm2/logs/events-out.log last 15 lines:
    ^C
    [email protected]:/var/www/LxdMosaic$ 
    

    Scheduled backups give me an empty file. Must be timing out or hitting a max, but I don't have visibility in the logs about what is being hit. Also, my version is again not displaying properly.

    version

    Reviewed by truelai at 2020-09-22 14:34
  • 3. Manual backups fail to import tarball - v0.9.3

    v0.9.3

    1. Navigate to: Dashboard / LXD-host / Container-name
    2. Click on the Backups tab
    3. In the LXD Instance Backups pane, click on Create
    4. Enter a backup name and select Import & Delete From Remote
    5. Note that the modal never disappears
    6. Using another tab, navigate to Dashboard / LXD-host / Container-name
    7. Click on the Backups tab
    8. Note that there is an LXD Instance Backup but no LXDMosaic Instance Backup
    9. Try to import (with or without deleting the remote backup)
    10. Note that import never occurs

    It appears that the remote backup is created. Where can I check for that tarball on the remote? Also, in the Even Log for the containers in question. I can see the events Import Remote Instance Backup. But I don't see them actually existing in the backups tab.

    Reviewed by robcorepo at 2020-09-15 19:42
  • 4. Spice VGA not working

    Describe the bug When connecting to VM via spice i get a black screen and if i look into the web console i can see that it says connection refused. Other parts of lxdmosaic are working fine.

    To Reproduce Steps to reproduce the behavior:

    1. Go to your VM
    2. Click on Terminal
    3. click on open in new window
    4. See black screen and error in web console

    Expected behavior A console that is able to be used

    Screenshots https://gyazo.com/2e7fa75da790da2ccb7419dcc95a4c6f

    Desktop (please complete the following information):

    • OS: Windows 11
    • Browser: Chrome
    Reviewed by Wolfo-Gaming at 2021-08-23 10:19
  • 5. No host found after fresh installation

    Describe the bug I freshly installaed mosaic like described in the readme under "Ubuntu (18.04 & 20.04) / Debian (Buster & Bullseye)" After it finished, i connected to the displayed IP and acceppted the self ssl certificate. no problems.

    image

    But now it asks for a host and user (no problem), but unimportant which IP/hostname i enter in "hostname" (given IP, localhost, 127.., hostname from apache conf, ...), it messages "Conot connect to ..."

    f.eg. using the IP: image

    error: image

    LXD is running: image

    Expected behavior A better/clearer information about which IP or hostname has to entered i this case of "automatic" setup.

    Desktop (please complete the following information): OS: Linux Ubuntu (updated) Browser: Firefox (updated)

    Reviewed by kimjohans at 2021-06-01 10:06
  • 6. Node server isn't reachable error

    Describe the bug I keep getting node server isn't reachable error

    To Reproduce 1.Login to https://host_ip_address

    Expected behavior No error displayed

    Screenshots

    image

    Desktop (please complete the following information):

    • OS: Ubuntu
    • Browser:Edge

    Additional context I was not able to access ipaddress:3000 from my browser. It said connection refused

    Reviewed by fragpic at 2020-05-06 08:57
  • 7. Collection of bugs/issues

    One of the more feature full LXD front-ends, load of potential, but I've encountered a number of bugs of varying levels of seriousness.

    Host: LXD Debian Buster container on a Debian Buster LXD snap host. Client: Debian Bullseye, Firefox 72.0.1 (64 bit) Version: v0.6.2

    • ~~Memory stats tooltip always shows 0 bytes (even though the pie chart is proportional to memory use) [accessible by clicking the host name on the dashboard]~~
    • ~~Dashboard charts consistently say "Not enough data check again in 10 minutes" (container has been up for over 24 hours)~~
    • ~~Typo when clicking "Add Server": memebers~~
    • ~~Sometimes the "Add Container" dialog gets stuck open (have not been able to find a way of reproducing, the console error log states "The modal is already in a state of transitioning"~~
      • this is a bootsrap issue, as you said its very hard to reproduce, I have spent time trying to fix it, but to no luck!
    • ~~The API "api/Hosts/SearchHosts/search" comes back with an empty array no matter what the search term is~~
    • ~~It would be more useful to default to showing a list of available options for drop-downs instead of requiring a search and then simply filter if the user types~~
    • Commented below
    • ~~Cannot create/modify a cloud image with zero-length " Enviroment Variables "~~
    • ~~View container, click "Files" and you get this error: Call to a member function getHeaders() on null /var/www/LxdMosaic/src/classes/Tools/Containers/Files/GetPath.php 97~~
    • ~~Importing a backup fails with Call to a member function hasWithHostId() on null /var/www/LxdMosaic/src/classes/Tools/Containers/Backups/StoreBackupLocally.php 42~~
    • ~~Console doesn't work~~
    • ~~Type when editing a container's settings: update stragery~~
    • ~~Some modals are not cleared of their previous contents when re-opened, (specifically the create/new modals)~~

    Obviously without being able to select a host, I can't do any more testing!

    Reviewed by avsdev-cw at 2020-03-17 13:37
  • 8. Question: is running Mosaic behind NAT rule supported? (the answer is yes, read the issue for more details)

    I run Mosaic on a container on LXD which is running behind an OPNSense VM. LXD and Containers get their IP from OPNSense DHCP. The "WAN" side of OPNSense is connected to our LAN. I have configured an LAN IP (the WAN side) -> OPNSense -> LAN (the internal network) NAT port forward. Mosaic seems to work but I do not get any active container info. I can see some items (e.g. network names, storage and profile names).

    Reviewed by knippers at 2019-10-30 15:59
  • 9. Specifying a port breaks adding a host

    Describe the bug A clear and concise description of what the bug is. On the "first run" URL: Attempt to enter hostname:port (e.g. my_v6_host:8443) lxdMosaic responds: "Unable to parse URI: https://:8443"

    To Reproduce Steps to reproduce the behavior:

    1. Go to First run URL https://my_v6_host/views/firstRun
    2. Enter hostname:8443, and trust password
    3. Click "Done"
    4. Note error message

    Expected behavior Expected lxdMosaic to connect to my LXD on port 8443

    Screenshots If applicable, add screenshots to help explain your problem.

    Desktop (please complete the following information): Shouldn't matter, but I was using Mac OS X and Firefox

    Additional context Add any other context about the problem here.

    Reviewed by cvmiller at 2019-08-29 22:38
  • 10. Container Console not working in UI

    Describe the bug Could be my fault, not entirely sure. The 'Console' doesn't work on any of my test containers. I did a clean container for Debian and Ubuntu and no matter what I try I cannot access 'console' via 'bash' from the web ui at all. The error on the side bar is 'Executing command - timeout waiting for websockets to connect'

    To Reproduce Steps to reproduce the behavior:

    1. create new container
    2. ensure container running
    3. go to console and try any common shell e.g. 'bash'

    Expected behavior Expected shell session to open and be available.

    Screenshots N/A

    Host Server (please complete the following information):

    • OS: Debian Bullseye Installed LXDUI via SNAP

    **Desktop

    • OS: Windows 10 Pro
    • Browser: Brave (shields off)

    each container gets a valid IP, has internet access etc. any idea or pointers here?

    Reviewed by Jonathan-Garber at 2022-03-10 23:54
  • 11. Support backups

    Is your feature request related to a problem? Please describe. Now LXD has a backup feature exposed over rest i guess it only makes sense to support backups (you can read about the apis here)

    Reviewed by turtle0x1 at 2019-05-15 13:13
  • 12. Lxdex

    The first public LXD indexer? Maybe if we ignore general purpose JSON indexers :partying_face:

    When you have have more than 2 or 3 LXD hosts searching becomes slow because to search "fully" you have to hit multiple endpoints. This branch add supports for a multistage process to create a searchable index that should be snappy to search.

    There is still quite a bit todo;

    • [ ] Filter search results based on user access
    • [ ] Scale test (beyond copying the array)
    • [ ] Grab more paramaters
    • [ ] Stop assuming user.user-data is YAML
    • [ ] Concurrency on cache builder
    • [ ] Document how it works
    • [ ] Get scripts into cron jobs
    • [ ] Adding settings to disable / enable / configure search
      • Scanning 30+ hosts to recursion level 2 every 5 mins probably isn't a good idea

    Example search for "ubuntu run" (as in to mean, showing instances in Running state with a ubuntu image) lxdex

    Reviewed by turtle0x1 at 2022-05-15 13:52
  • 13. Floating console

    fThis adds support for:

    • Instances in arbitrary projects (this was supported but not right)
    • Multiple users with multiple tabs on the same instance
    • Checking the status of a process id
    • 5 minute re-connection grace period
    • Users can refresh the page / change devices

    First draft of floating console frontend floating_console

    Reviewed by turtle0x1 at 2022-05-15 12:57
  • 14. API's everywhere

    As I analyse the API for #488 its clear there is no consistency to the API.

    At minimum admin endpoints are found here, there, and everywhere. These can be put under /api/admin.

    Reviewed by turtle0x1 at 2022-04-05 18:29
  • 15. Pools are incorrectly labeled as volumes on user universe

    In the backend of the code if you wanted to get a list of Hosts and the pools on them the user can access you would call the method;

    $this->universe->getEntitiesUserHasAccesTo($userId, "volumes");
    

    But really what it means is Pools, Volumes are stored within a Pool and are a separate entity all together.

    This isn't a security concern but its flat out wrong.

    Reviewed by turtle0x1 at 2022-04-03 17:06
  • 16. SFTP API Explore

    LXD now has an API /1.0/instances/c1/sftp that upgrades to a "socket over PROTOCOL".

    This upgrade changes the overhead requirements of the filesystem explorer drastically. We dont have to download items (potentially TB's in size) to work out if they are file or a directory.

    So far it appears node (the language) isn't happy with this because it doesn't understand the upgrade to the protocol sftp but ssh2 does and all it does it has to give us the Net.Socket.

    Reviewed by turtle0x1 at 2022-03-17 00:11
phpRedisAdmin is a simple web interface to manage Redis databases.

phpRedisAdmin phpRedisAdmin is a simple web interface to manage Redis databases. It is released under the Creative Commons Attribution 3.0 license. Th

Dec 1, 2021
A web interface for MySQL and MariaDB

phpMyAdmin A web interface for MySQL and MariaDB. https://www.phpmyadmin.net/ Code status Download You can get the newest release at https://www.phpmy

May 20, 2022
amadeus-ws-client: PHP client for the Amadeus GDS SOAP Web Service interface
 amadeus-ws-client: PHP client for the Amadeus GDS SOAP Web Service interface

amadeus-ws-client: PHP client for the Amadeus GDS SOAP Web Service interface This client library provides access to the Amadeus GDS SOAP Web Service i

May 17, 2022
MOFHY Lite is a free web hosting management system to manage MOFH hosting accounts and SSL certificates.

MOFHY Lite is a free of cost MOFH clientarea for account management and support services with free ssl service. It have easy to use feature

May 19, 2022
This web app aims to manage alumnus databases.

Aplikasi Database Alumni Aplikasi berbasis web ini bertujuan untuk melakukan pendataan alumni. Aplikasi ini dibuat menggunakan framework CodeIgniter d

Nov 24, 2021
Open Source Voucher Management System is a web application for manage voucher. used PHP with Laravel Framework and use MySQL for Database.
Open Source Voucher Management System is a web application for manage voucher. used PHP with Laravel Framework and use MySQL for Database.

Voucher Management System is a web application for manage voucher. You can create and manage your voucher. Voucher Management System is used PHP with Laravel Framework and use MySQL for Database.

May 22, 2022
MOFHY Lite is a free web hosting management system to manage MOFH hosting accounts and SSL certificates.

MOFHY Lite MOFHY LITE is a priceless MyOwnFreeHost Client Area for account management, ticket support system and a free ssl service. It has easy to us

Dec 28, 2021
A PHP based web application to help manage your postmortems
A PHP based web application to help manage your postmortems

morgue a safe place for all your postmortem data Overview This is a PHP based web application to help manage your postmortems. It has a pluggable feat

May 24, 2022
ViMbAdmin project provides a web based virtual mailbox administration system to allow mail administrators to easily manage domains, mailboxes and aliases.

ViMbAdmin project (vim-be-admin) provides a web based virtual mailbox administration system to allow mail administrators to easily manage domains, mailboxes and aliases.

May 2, 2022
This application gives you the ability to send a newsletter to multiple subscribers with use of SMTP or an external driver like Mailgun
This application gives you the ability to send a newsletter to multiple subscribers with use of SMTP or an external driver like Mailgun

Laravel Newsletter Laravel Newsletter is an open source project that can be used for sending newsletters to multiple subscribers, mailing lists, ... a

Feb 17, 2022
A simple website for estimating withdrawal availability over multiple exchanges.
A simple website for estimating withdrawal availability over multiple exchanges.

IOTA exchange status FAQs | Installation | Contributing IOTA exchange status is a simple website for tracking the current withdrawal possibility of IO

Jan 10, 2022
A free and open-source accounting and production system for businesses and non-profits with support for multiple users and varied integrations

A free and open-source accounting and production system for businesses and non-profits with support for multiple users and varied integrations.

Feb 24, 2022
A unified front-end for different queuing backends. Includes a REST server, CLI interface and daemon runners.

PHP-Queue A unified front-end for different queuing backends. Includes a REST server, CLI interface and daemon runners. Why PHP-Queue? Implementing a

May 16, 2022
A simple wrapper for PHP Intervention Library to provide a more simple interface and convenient way to convert images to webp

This package is a simple wrapper for PHP Intervention Library to provide a more simple interface and convenient way to convert images to webp - next generation format - extension, and resize them to render only needed sizes.

Nov 16, 2021
Switch the DokuWiki interface language according to the accept-language request header

Switch the DokuWiki interface language according to the accept-language request header

Jan 4, 2022
Interface Network is an application about social media

Interface Network is an application about social media

Apr 20, 2022
Roundcube Webmail is a browser-based multilingual IMAP client with an application-like user interface.

Roundcube Webmail roundcube.net ATTENTION This is just a snapshot from the GIT repository and is NOT A STABLE version of Roundcube. It's not recommend

May 27, 2022
A great looking and easy-to-use photo-management-system you can run on your server, to manage and share photos.
A great looking and easy-to-use photo-management-system you can run on your server, to manage and share photos.

Lychee A great looking and easy-to-use photo-management-system. Since the 1st of April 2018 this project has moved to it's own Organisation (https://g

May 26, 2022
PHP backend Scripts to add and Manage Live tv Streaming android app
PHP backend Scripts to add and Manage Live tv Streaming android app

PHP Backend to Manage Live TV Streaming Android app Follow Given Steps to Setup Local Environment to run this php Script Setting Up Local Environment

May 10, 2022