Changes
Migrating our resources to a new server, changing the system design, and much more.

Migrating our resources to a new server, changing the system design, and much more.

I recently moved my personal projects from a Russian server to a new one hosted by an international provider. At first I was thinking about Switzerland, but in practice the server that fit my budget and reliability requirements ended up being in Stockholm. So this was less about a literal move to one specific country and more about relocating my infrastructure, domains, and project hosting outside the Russian zone.

This was not just a technical migration. It was also a practical decision. I used to have a .ru domain, but I decided to move away from it. With the upcoming regulatory changes in Russia, managing a .ru domain is becoming more complicated than I want for personal projects. I paid for a domain to host and show my work, not to deal with extra state-related friction around something that is supposed to be mine.

So I bought new .com domains and moved the infrastructure over. To be honest, the migration was not elegant. The hardest part was moving the data. My old server was tied to an SSH key, and I initially expected to transfer everything directly through the command line. In reality, that turned into a mess. I tried several approaches, including ssh, rsync, and other CLI-based methods, and after spending far too much time on it, nothing really worked the way I needed.

In the end, the only workable solution was the most basic and stubborn one: archive the data, download it to my PC, upload it to the new server, and restore it there. Not beautiful, but effective. Sometimes infrastructure work is not about doing things in the cleanest possible way. Sometimes it is just about finding the one method that actually works and pushing through.

The good part was that I already had a list of the libraries and services my projects needed, so after the migration I mostly had to rebuild the environment, verify the apps, reconnect the domains, and issue SSL certificates for the new .com addresses. After that, the projects were running normally. No major disasters, which already feels like a small win.

I also updated the look of things a bit. I added a cute little tree, still a bit wonky of course, but it already has some charm. It even has its own crawling little creatures and birds. This is where I’m going to place a screenshot.

The only serious issue left is regional accessibility. Without proxying or tunneling, the projects are not consistently reachable from my main region. I tested that directly, so this is not just a theory. Because of that, my next step will probably be setting up a second server to make access more stable.

In any case, the migration is done. There is still a lot to improve, but the important part is that everything has been moved, it works, and now I have room to keep building.