kelinger / OmniStream

Deployment and management tools for an entire streaming platform that can reside on a server (local, remote, hosted, VPS) with media files stored on cloud services like Google Drive or Dropbox.
MIT License
30 stars 8 forks source link

Recommended migration path from Gooby on Ubuntu 20.04? #39

Closed bifa2 closed 1 year ago

bifa2 commented 1 year ago

Hi,

I just tried upgrading my Gooby based Ubuntu 20.04 machine to Ubuntu 22.04 and that broke (like this).

I reverted the snapshot of the virtual machine (to restore it back to a working state), and then tried upgrading to omni but after that ran, it refused to bring up any containers.

Given that you prefer to run Debian, what path would you recommend to migrate from my current setup (if it helps, I only care about retaining my Plex db/config).

Thanks!

bifa2 commented 1 year ago

If you need me to repeat anything I tried and get some logs, I can do (though I'm unsure where to locate ones specific to Gooby and Omnistream at the moment). It's very easy just to revert the VM snapshot to a working state so there's no real risk.

TechPerplexed commented 1 year ago

Hi @bifa2 and welcome to the other side :) Upgrading should be relatively painless for sure. Quick question: did you follow the instructions as mentioned here? https://www.omnistream.cloud/gooby-upgrade/gooby-to-omni

bifa2 commented 1 year ago

Thanks for quick reply as always! I did follow that, but had no luck. I'l try again and document exactly what happens.

One thing that I think might be useful clarification is that whilst it stresses the importance of backing up, you don't want to 'restore from backup' during the omni installation process as presumably that's only for omni backups, not your gooby backup that you should have just taken?

TechPerplexed commented 1 year ago

That's correct - the only reason to stress the backup is for failsafe when things go wrong - no other reason. You don't NEED Gooby to install Omni because they are basically two completely different products. You could just install Omni from scratch and then move your working configs across such as your Plex database files.

But if you have a working Gooby configuration, it's probably easier to follow the upgrade... well, if it works ^_^

bifa2 commented 1 year ago

Just posting back to let you know that I'll attempt this tomorrow!

bifa2 commented 1 year ago

omni-upgrade Stopped containers Prompted for upgrade > Y

Likely not important (fatal, not a git repo) but mentioning anyway as there may be a line in the config that can be deprecated/handled gracefully:

image

Continued the install to the end. The installation report looks clean.

Logged out and back in and ran omni home. Toggled the components I wanted but jq errored (presumably some kind of object/json parsing issue):

image

Ran the omni up option and it attempts to do something before a very quick flash of red errors which vanish because the menu pops back up. I had to screengrab and managed to extract this. It errors for every one of them though, and no containers are running when checking with docker ps:

image

Anything else I can do?

TechPerplexed commented 1 year ago

I'm paging @kelinger because that's definitely more in his territory 😄

kelinger commented 1 year ago

I will say that I've tried OmniStream on Ubuntu, and I've been able to get it to work. However, the Docker installation instructions (even from the Docker site itself) don't actually work in my experience with the latest and greatest Ubuntu version. Fortunately, we made the setup process skip over anything that is already installed, for the most part.

I'd try to take your new Ubuntu system, get Docker and Docker Compose installed following guides from the Internet, and then run the OmniStream new installation process.

Also, if your server isn't running on Intel x64 hardware, you may have issues with some of the containers.

bifa2 commented 1 year ago

Apologies if unclear. The underlying server hardware is Intel x64.

This isn't a new system; I've been running Gooby for years now, first on 18.04 and then last year I did an inplace upgrade to 20.04. This works just fine. Upgrading to 22.04 doesn't so I just reverted the VM snapshot to a working state.

I'm trying to upgrade to Ombistream because it seems like Gooby won't be developed/maintained (but it currently works along with Docker and docker compose).

If the issues above can't be supported by you (and that's completely fair!), then presumably the migration from Ubuntu 20.04 is to backup Gooby, try and restore Gooby on a new Debian server, and then do the upgrade to Ombistream?

I just want to upgrade to something that has a bit of support and keep my Plex server configuration, but unfortunately I don't know how to do this without a working upgrade path or a migration path between Gooby on Ubuntu to Omnistream on Debian.

Help much appreciated!

TechPerplexed commented 1 year ago

Have you tried installing Omni from scratch on a Debian system? Does that work? If so, we can take it from there and then you can copy in your Plex/etc configs afterwards... it would be slightly more elaborate but as long as the end result is a working server, right?

bifa2 commented 1 year ago

Yep, that's an option!

My current system is VMware based but I'll have a go at installing Omnistream into a Hyper-V VM on my laptop and see how that goes (at least for the installation part because I don't have any domain names pointing to my home IP address etc).

If smoothly then I can replicate that part on VMware later and we can try migrating the existing data (plex and rclone primarily)... 🙏🏻

bifa2 commented 1 year ago

On a clean Debian VM, the previously mentioned jq related errors are there, and this is the output when trying to bring up the containers:

image

Plex won't start, but traefik and oauth are started.

kelinger commented 1 year ago

@bifa2 Sorry about the delays. Were you able to get OmniStream working?

Based on your last info, the issue is going to be with OmniMount. Until we can get your cloud drive(s) mounted, Plex and most other containers aren't going to work (or, may work but will essentially be useless).

bifa2 commented 1 year ago

Unfortunately not. I got as far as my last message and figured if it didn't work on a clean installation of Debian (for me) then there wasn't much hope of me getting it working upgrading from Gooby on Ubuntu 20.04 (plus you've been busy, which is fair!).

Unless you've got some suggestions on troubleshooting further (like log files I can provide - perhaps from the installation process or docker related) I'll keep running Gooby on Ubuntu until it breaks and I'm forced to figure it out. Happy to leave the decision up to you :)

kelinger commented 1 year ago

@bifa2 - we should be able to get this working. Let's take a step approach and start by leaving OmniStream and Docker completely out of this.

You say that you've setup Rclone on the host machine and included your sample rclone config. Assuming you still have access to that machine (basically Debian and Rclone installed) you should be able to get a listing of your remote volume with the command rclone lsd remote: (so if the definition in rclone is "clouddrive" then this would be rclone lsd clouddrive:). Just remember the colon on the end.

Does that much work?

bifa2 commented 1 year ago

Apologies for the delayed reply. I can confirm that on my existing Ubuntu machine the command you mention works. This is running Gooby though at the moment.

I don't have a fresh Debian install available just right now, and can't re-attempt the in-place upgrade of the Ubuntu machine from Gooby to Omnistream for a few weeks at least (heading out of the country early next week so need to leave it in a working state 😁).

What would you suggest would be the next step to try?

kelinger commented 1 year ago

Well, unfortunately, this is really built for Debian. The problem is that Docker--even using their own installation script--fails to install/upgrade on Ubuntu because it can't find that release. The same would occur on Debian if you upgrade to a pre-release like Bookworm (Docker expects to see "Bullseye" for Debian). Thus, the installation scripts are failing (at least partially) and components aren't installed or configured.

TechPerplexed commented 1 year ago

Closing this because it hasn't seen any activity for almost a month now - as always, feel free to reopen if new insights occur :)