Posted on 14 Comments

Version 3.1.0 Release

A new version of LXD Dashboard has just been released. This version focused on performance improvements to the web application. Also, labels for storage and memory unit size have been updated to correct values, changing from MB to MiB, etc.

The page load performance when viewing a single container or virtual machine page received the greatest improvement. Pages will now only load content based on the current tab selected within the page. When exporting a backup from the LXD server to the LXD Dashboard, a PHP process is now called to run in the background to handle this action. Previously exporting a backup would cause the page to stall on loading new pages until the export was finished.

The curl connection timeout has also been adjusted to from a 3 second timeout to a 1 second timeout when waiting for a GET request from the LXD server. This improves the page response when attempting to connect to an LXD server that may not longer be available. Page content refreshes now schedule a refresh only after a previous refresh completes rather than on a set schedule

14 thoughts on “Version 3.1.0 Release

  1. Hi,
    Does this come with proxy because I want to install it and use with WordPress but I need proxy so that traffic can be routed to the Lxd container. Please let me know and how it will be done

    1. Hello Raymond,
      The LXD platform does allow you to forward traffic to a container. There are two approaches to doing that. On the first way, you could create a profile that setups up a proxy then attach the profile to the container. (see https://lxdware.com/forwarding-host-ports-to-lxd-instances/). The second way is to add the proxy directly to the container config settings itself. The LXD dashboard allows you to do both ways, creating a profile then attaching it to the container, or directly configuring a proxy device for the container.
      Hope that helps,
      Matt

      1. Hi,
        Thanks for the response. Another similar question is about SSL. Does it comes with automatic SSL or something to help with SSL in conjunction with the proxy.

        1. If you install and setup the LXD Dashboard on a Linux machine then you can modify the webserver to use SSL/TLS. It is not something that is setup automatically. If you use the docker image to run the LXD Dashboard then you will need a proxy setup to handle the SSL/TLS certificates.

  2. Hi
    I am getting the following error in nginx error logs. What could be the issue

    2022/01/05 00:48:39 [error] 42389#42389: *1 FastCGI sent in stderr: “PHP message: PHP Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: 1 no such table: lxd_users in /srv/http/lxd-dashboard/backend/config/db.php:957
    Stack trace:
    #0 /srv/http/lxd-dashboard/backend/config/db.php(957): PDO->query()
    #1 /srv/http/lxd-dashboard/backend/admin/settings.php(466): isFirstUser()
    #2 {main}
    thrown in /srv/http/lxd-dashboard/backend/config/db.php on line 957” while reading response header from upstream, client: 10.x.x.x, server: _, request: “POST /backend/admin/settings.php?action=createUser HTTP/1.1”, upstream: “fastcgi://unix:/run/php-fpm/php-fpm.sock:”, host: “10.x.x.x”, referrer: “http://10.x.x.x/”
    2022/01/05 00:48:39 [error] 42389#42389: *1 FastCGI sent in stderr: “PHP message: PHP Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: 1 no such table: lxd_users in /srv/http/lxd-dashboard/backend/config/db.php:957

    1. Bobby,
      It looks like the LXD Dashboard is not able to read the user’s table in the sqlite database. Within the container you should have the sqlite database file /var/lxdware/data/sqlite/lxdware.sqlite that was created when you first registered your user. It may be that Nginx was unable to create the database file. Can you verify that it exists. Also a config file for the database should also be created at /var/lxdware/data/db_config.php. Can you verify that the lxdware.sqlite database exists. If not, look into changing recursively the permissions of the /var/lxdware directory giving write permissions to whatever user Arch is using to run Nginx. In Debian based systems that user is www-data, but I am not sure user Arch Linux uses.

      1. Matthew,
        To isolate the problem, I did the installation in an Ubuntu container and I ran into exactly the same issue. In arch the user for nginx and php-fpm is ‘http’. The db.config and the sqlite database are created on registration and the permissions are correct. I am not able to troubleshoot this further on my own. Thanks for looking into this

        1. I will run through an installation on Arch this weekend and try to put out a tutorial for it. If you are getting the database and config file created there may be a php module that still needs setup. I just ran through my installation steps on Ubuntu for version 3.1.0 in an Ubuntu container and was able to get it to work without issues. I used the ubuntu:21.04 image. I know there are slight differences between that and the images:ubuntu/21.04 image. I will let you know what I find out.

          1. Matthew
            As you said, I tried with the ubuntu 21.04 image and it works flawless. I guess the issues we had with later version OS versions maybe because of higher PHP versions. About your work, I am truly in awe !!! Really appreciate the time and effort you have put into this. You can look at the issues in time Matthew, enjoy your weekend !!!

          2. Thank you so much!

  3. Hi,
    Thanks for your response. If I install it in docker, how will the setup for the SSL be keeping in that there will now be two IPs sets(LXD and docker) is there a tutorial on what to do. It would be great if you can do a tutorial for different ways of setting up the SSL and one can choose whichever they like. And to know how the setup will go. I’ve used the graphical Nginx SSL setup before. Is there something like that here that will be able to manage the LXD.

    1. That is a great idea. I will be working to put together some tutorials on installing the LXD Dashboard in other Linux operating systems this weekend and will include one on using a reverse proxy with SSL/TLS for the Docker installation.

  4. Hi,
    Also in the video you can include option of installing the dashboard on LXD and another one on docker and if time permits another one on host system. I’m really looking forward to this and I know it will benefit a lot of people especially the reverse proxy with SSL/TLS.

    1. When I first setup the Docker container I was following what I was seeing from so many apps, where they did not include support for HTTPS traffic. I got thinking about this after your questions and wondering why don’t I include HTTPS support. I have been testing it out now and should have it available for the next 3.2.0 release. I have created a tutorial on setting up a reverse proxy in the meantime at https://lxdware.com/simple-nginx-reverse-proxy-in-lxd/. I am looking to create videos for my tutorials as well when time allows.

Leave a Reply

Your email address will not be published. Required fields are marked *