Migration to station 0.5.0

Just before we start, I just wanted to mention that your town will likely still run even with the current configuration. It's just that if you want to take full advantage of the update and most importantly, Spaces, then I would recommend sticking with me just a little bit longer. It's really not a lot of changes.

Everything that changed

  • A lot of environment variables are now redundant and no longer needed because LiveKit support was removed with the 0.5.0 update.
  • A new Nginx configuration has been added to the Docker guide to handle the new port that opened for Spaces.

How to migrate to 0.5.0

Let's remove some clutter from your config.env file first. Just as a reference, this is the file where all of your environment variables are stored. If it's not called config.env it doesn't matter.

1. You can safely remove any environment variable with the prefix SS_LK_ as they are not needed anymore due to the removal of LiveKit support.

2. MAX_FILE_SIZE, MAX_TOTAL_STORAGE and MAX_FAVORITE_STORAGE can also be removed. These things can now be configured by going to Settings > Town > Files.

Now for the Nginx configuration. I actually didn't change a whole lot there, so this is basically just copying a file into a directory. This part of the migration guide is only important if you followed the official Docker installation tutorial.

3. Go to /etc/nginx/sites-available where all of your configurations are stored.

4. Put the configuration below into a new file called liphium-spaces and add it to the folder and replace spaces.example.com with your domain.

server {
    server_name spaces.example.com;

    # The WebSocket gateway
    location /gateway {
        proxy_http_version 1.1;

        proxy_connect_timeout 7d;
        proxy_send_timeout 7d;
        proxy_read_timeout 7d;

        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        proxy_pass http://localhost:4002/gateway;
    }

    location / {
        proxy_pass http://localhost:4002;
    }
}

5. Link the file to the /etc/nginx/sites-enabled folder by running the command below (assuming you still named the file liphium-spaces).

ln -s /etc/nginx/sites-available/liphium-spaces /etc/nginx/sites-enabled/liphium-spaces

And a little apology

I'm sorry for rolling out this update in such a weird way. I learned from my mistakes and next time I'll make sure to provide migration guides and resources on what's new directly before the update and not when it's already out for a day.

Well, some of the problems with the recent update have already been fixed in a little update called 0.5.1 for the server and v0.5.2 for the client, respectively. I hope that this doesn't happen again and in the future all the releases will be thorougly tested before release. I complain about this myself all the time, so I also wanna prevent it for my own app.

And with that, I wish you a happy rest of your day and a lot of fun with Liphium!