TrueNAS Scale: Migrating Sandboxes to Docker in Electric Eel // Compose, Dockge & Jailmaker

Поділитися
Вставка
  • Опубліковано 9 лис 2024

КОМЕНТАРІ • 95

  • @CaptStux
    @CaptStux  2 місяці тому +8

    ElectricEel-24.10 has now been released!
    You can upgrade to Eel via a train change in System -> Update
    Everything I've covered in the video is still applicable.
    Enjoy

    • @rainson12
      @rainson12 2 місяці тому

      thanks for the info, is this the suggested way moving forward to host custom docker containers? Is there any native docker compose way of hosting apps on truenas?

    • @CaptStux
      @CaptStux  2 місяці тому +1

      A minimal native UI for Compose is planned for the RC.1 release
      You may still prefer the Dockge UI

    • @Invaderjason123
      @Invaderjason123 Місяць тому

      I updated this morning and it seems my current instance of dockge no longer works. When I do a jlmkr shell docker it throws an error

    • @CaptStux
      @CaptStux  18 днів тому

      @@Invaderjason123 I found I had to redo the jlmkr alias for some reason following the current jailmaker instructions.
      I think this was due to the slight changes in shell behaviour.

    • @BogartDgreat
      @BogartDgreat 17 днів тому

      @@CaptStux How did you redo the alias? i tried a new install with the Electric Eel RC2 and am stuck at getting the alias to work.
      edit: got it already. thanks

  • @petervogt8309
    @petervogt8309 2 місяці тому +11

    I feel a huge sigh of relief - suddenly moving all my truecharts as and when doesn't seem so scary anymore. Dockge here we come! Thankee Capt, you really nailed the format for this type of video!

  • @jerrylackovitch643
    @jerrylackovitch643 2 місяці тому +5

    Thank you! I just recently setup dockge with your old video. With EE coming out soon, this will be a great tutorial to follow for the migration!

  • @Patrick33456
    @Patrick33456 2 місяці тому +7

    I see a new Stux video, I thumbs up. Simple as that.
    This will come in so handy when the time comes, thank you!

  • @johnrobe9578
    @johnrobe9578 2 місяці тому +1

    I made a cameo in this one! Haha! Absolutely love the video and always super appreciate these, thanks Stux!

  • @Scott-ph2yk
    @Scott-ph2yk 2 місяці тому +3

    As of 8-22-24, I am running Core 13 U5, but planning my migration to Scale for Q4 24 or Q1 25. Your videos on Jail Maker and Dockge are very informative and helpful. Your videos help to fill the gaps between the documentation and the system execution. Thanks for posting.

  • @pedrorosal560
    @pedrorosal560 2 місяці тому +4

    Thank you so much for your videos and answers over on the TrueNAS forums. Much appreciated!

  • @rambro1stbud
    @rambro1stbud 2 місяці тому +9

    Awesome! I got my full Arr stack running in Dockge thanks to your original video. The CPU load is indeed way, WAY down compared to when I was using the ix-apps. Excited to come back to this video when the Electric Eel beta drops.
    EDIT: Yep, set up Dockge, pointed it to the correct host paths, and it pulled down every stack the second I logged in. Literally all you have to do is change the mount points and IP addresses within certain apps. The ONLY annoying thing so far is the sidebar in Electric Eel shows both new and old dashboards. Just asked - it's getting removed in a later update. All good otherwise.

    • @CaptStux
      @CaptStux  2 місяці тому

      It’s already gone in the nightlies ;)

  • @timekeeper3856
    @timekeeper3856 11 днів тому +1

    Just finished setting up the release version, everything went extremely well. Thank you:)

  • @gswhite
    @gswhite 2 місяці тому +3

    As always a fantastic overview of the next set of features coming in TrueNAS. Thanks.
    I followed your recommendations and moved to jailmaker a couple of months ago, but I will try to migrate to Electric Eel once released and stable .
    thanks again :D

  • @Invaderjason123
    @Invaderjason123 2 місяці тому +3

    Always appreciate your clear and easy to follow guides. I'll probably sit out on the beta and wait for RC1 before switching. I've been burned a few times being an early adopter.

  • @maranite
    @maranite Місяць тому +1

    Hey Stux,
    These videos are very helpful, easy to understand and really nicely produced - thank you!

  • @AliAnwar267
    @AliAnwar267 2 місяці тому +1

    As always, clean, simple and to the point video.

  • @NickyNiclas
    @NickyNiclas 2 місяці тому +1

    Thank you! Much appreciated! This saves me some time on patch day! :D
    I'll probably edit each compose.yaml in notepad++ and do find replace for the paths since it can do it to all open documents at once!

  • @Rescue7363
    @Rescue7363 2 місяці тому +1

    what a clear and easy to follow video, thanks!

  • @d4rkm3ch
    @d4rkm3ch 2 місяці тому +1

    Clean and simple. Thanks again!

  • @DwynAgGaire
    @DwynAgGaire 2 місяці тому +2

    Brilliant man!! Thank you very much

    • @CaptStux
      @CaptStux  2 місяці тому +1

      You're welcome!

  • @oleksandr_real
    @oleksandr_real 2 місяці тому +6

    Great video tutorial! Thanks. Just one missing topic: How does GPU acceleration work, and are there any additional changes needed?

    • @CaptStux
      @CaptStux  2 місяці тому +5

      I think that's going to be a separate video :)

    • @project_mini_hero
      @project_mini_hero 2 місяці тому

      @@CaptStux definitely looking out for this one as my only challenge for the jail was getting transcoding to work (AMD Ryzen 7 6800H with Radeon Graphics)

  • @phaelaxz8555
    @phaelaxz8555 4 дні тому

    I had been looking forward to electric eel and I was surprised when they first announced all apps would migrate over. Though upset that's not the case, I'm not surprised either they won't migrate truechart apps.

  • @BarakaAndrew
    @BarakaAndrew Місяць тому +1

    ElectricEel makes TrueNas the go to OS for people like me, I love docker compose, its way easier to handle apps than kub. Plus vdev expansion coming, life has never been easier.

  • @manofwar9307
    @manofwar9307 2 місяці тому +2

    Great guide, I'll definitely be coming back to reference it once Electric Eel is in full release! Do you have a video showing where to find data for truecharts based applications and how to migrate it? I'm specifically hoping to be able to just copy over my plex data instead of having to regenerate all the metadata.

    • @CaptStux
      @CaptStux  2 місяці тому +3

      You should be able to rescue your Plex config from TrueCharts.
      At the end of the day TrueCharts is using a standard docker Plex container.
      Once you’ve rescued that, then you should be able to configure Plex app or a Plex compose to use it.
      This link may help with extracting your data from TrueCharts.
      www.reddit.com/r/truenas/comments/1d2k4lf/finally_migrated_away_from_truecharts_steps_and/

  • @BSK911
    @BSK911 2 місяці тому +2

    Thanks for showing this before the officiel release!
    So if I'm currently running multiple docker jails/sandboxes using different IPs to avoid overlapping ports, I guess I should stick to the jailmaker method for now because it seems the TrueNAS Apps doesn't support that for now?

    • @CaptStux
      @CaptStux  2 місяці тому

      Yes. Each Jailmaker gets you an isolated instance of Docker, and if you want that, it’s still the best way to go.
      Full Linux Container support is due in Fangtooth (25.04)

    • @CaptStux
      @CaptStux  2 місяці тому +1

      Yes.
      It can be done using compose, but how this is accomplished via the GUI is currently TBA.

  • @Grstearns
    @Grstearns 2 місяці тому

    I’ll say one thing for TrueCharts, it did get me to learn Kubernetes (whether I wanted to or not). I feel like single containers or compose projects were a lot closer to BSD jails and starting with containerd or podman from the beginning would have made more sense.

    • @DarthV506
      @DarthV506 2 місяці тому +1

      iX had plans to make Scale actually scalable. But the distributed storage they chose ended up deprecated. They have telemetry on what people are using and I'm guessing the vast majority were single node, which isn't a great match for using kubernetes. Would I use truenas for smb/nfs storage at work? It's a valid option. Would I use it hyperconverged? Hell no. Our kube cluster is basically disposable.

  • @chriso5923
    @chriso5923 2 місяці тому +1

    Great video as always Stux. Question: Given the impetus for jailmaker in the first place (a jail that transcends TrueNAS versions), do you think running Dockge inside the jail would be preferable to using the TrueNAS app version? It might be worth the extra 5 minutes to just install the jail version so you know it will move through updates with no issues.

    • @CaptStux
      @CaptStux  2 місяці тому +2

      Running all your docker stack inside a jail still gets you very good isolation from the host OS, including a simple separate IP.
      The issue is you are now responsible for updating the jail's base OS, as well as Docker version etc, whereas those updates come as part of the standard TrueNAS update process when using the "native" docker support.
      It can be simpler to implement macvlan networks in the jail
      Ultimately, I think if you *can* use the native docker, then you should, at a minimum it provides a simpler pool container mapping, rather than pool jail contianer,
      BUT where you need additional isolation, for example, rootless-docker, or podman, etc it is still a good idea.
      AND there are compatibility issues that come from the isolation of a jail, which are not an issue with native docker.
      its swings and roundabouts.
      At the end of the day, its up to you. Jails work very well, and in the future I can envisage a migration to "native" LXC from Jailmaker jails.

    • @chriso5923
      @chriso5923 2 місяці тому

      @@CaptStux Thanks Stux.

    • @chriso5923
      @chriso5923 2 місяці тому

      @@CaptStux One thing I'm also not clear on is how apps like pihole which require a dedicated IP and port 53 to work when it's run inside the truenas dockge app. You have to turn off systemd-resolvd service in the jail, but I don't think you want to do that in truenas. I think running pihole inside a jail might be simpler.

    • @CaptStux
      @CaptStux  2 місяці тому +2

      @@chriso5923 yes.
      When running it on the host, you can setup a macvlan network, and the pihole container could have its very own IP, much like how the jail has its own IP.
      The routing is tricky, and although I have it working fairly well in my tests, I'm waiting for the EE release to see where we land.

    • @chriso5923
      @chriso5923 Місяць тому

      @Stux - I've been playing with the transition from jailmaker dockge --> truenas app dockge and found that wordpress, for example, doesn't transition the database information, despite binding the stacks and data datasets. When an existing WP installation is opened in the TN dockge, it defaults to a brand new installation. Very interesting.

  • @dylon0107
    @dylon0107 2 місяці тому

    I'm really glad they finally actually added docker, but it seems like unraid is still more user friendly, so I don't think I'll be switching back to trueNas anytime soon.

    • @CaptStux
      @CaptStux  2 місяці тому +1

      That may be true, but I think TrueNAS is far more capable.
      At the end of the day, it comes down to how well integrated ZFS is into the system, and although Unraid does support ZFS, its not as integral to the product as it is with TrueNAS

  • @zachb4047
    @zachb4047 2 місяці тому

    cool! thank you for the video. any idea if igpu or dgpu passthroug will work with this?

    • @CaptStux
      @CaptStux  2 місяці тому +1

      Just need to configure the compose correctly.

  • @thegorn
    @thegorn 2 місяці тому +2

    I was hoping that the Docker on TrueNAS (managed by TrueNAS "Apps") could still run off a separate IP to what TrueNAS uses for itself. That way I can never stomp any ports for TrueNAS itself, with any of my Docker instances. I put my main NIC into br0 and I like having a separate bridged IP for Docker.

    • @CaptStux
      @CaptStux  2 місяці тому +2

      Sandboxes are still useful, and Docker Networking is still in flux at the moment.
      Currently, I think you can bind to specific IPs at the compose level, as well as use macvlan and ipvlan.
      Should work with standard docker techniques.
      Watch this space ;)

  • @Invaderjason123
    @Invaderjason123 Місяць тому +1

    I've managed to get everything setup but where is TrueNAS storing the dockge compose file at? I would like to add Traefik labels so I can access dockge remotely. I had this setup when I was running it in jailmaker.

    • @CaptStux
      @CaptStux  26 днів тому

      Until this Feature Request is implemented
      forums.truenas.com/t/accepted-add-additional-labels-ui-to-app-configuration/12267?u=stux
      TrueNAS doesn't support adding labels to apps. In order to add a Label to the dockge app you will need to install dockge manually, which is pretty much the same as how I install it in my Sandboxes with Jailmaker video.
      Ie, make a dockge directory, install it there using the procedure from the website. Change the stacks location to referer to your pools stacks directory.

  • @AinzOoalG0wn
    @AinzOoalG0wn 25 днів тому

    thx for sharing stux.
    however, i don't know why, but after updating to eel it broke the docker jail. doing jlmkr start docker failed to start. not sure why that is.
    but going to boot environment to switch back to the previous dragonfish, it works again.
    i would do what you showed, which was to migrate away from jailmaker and run it native on truenas. but the problem is i don't want the docker stuff to be on the same ip used by truenas. because i use port 8080 for nginx proxy manager, and how i got away with that was because docker ran on a different lan ip than truenas due to jailmaker. but if you undo that, now they are both using the same ip. so a new issue is created.

  • @MladenMarinov
    @MladenMarinov Місяць тому

    Huge thanks!
    However I did not get it - can we use different IP address to different sandboxes, or we will be able to use only the sandbox IP address?
    Please advise.

  • @robertrudik3022
    @robertrudik3022 9 днів тому

    What about IPv6 support for? Have you tried it?

  • @gogojoejoe
    @gogojoejoe 2 місяці тому

    Thanks for the guide! Is there a way to access the truenas docker shell to, say, modify the truenas docker networking?

    • @CaptStux
      @CaptStux  2 місяці тому +1

      System Settings -> Shell, then you can use the docker cli, you may need `sudo`
      Also you can ssh in if you enable the ssh server

    • @CaptStux
      @CaptStux  2 місяці тому

      Btw, in dockge you can access the dockge shell, and the docker cli works to modify the docker networks there from the dockge gui

  • @JanKatins
    @JanKatins 2 місяці тому +1

    Will that already support getting a separate IP via a bridge? E.g. I want to be able to run home assistent and pihole directly in the network of the host without using the docker host network type.

    • @CaptStux
      @CaptStux  2 місяці тому +1

      TrueNAS apps don’t support this yet. It can be implemented in compose by using a macvlan network, or by binding the port to an ip alias

  • @DarthV506
    @DarthV506 2 місяці тому +1

    For simple setups for the arrs/plex/etc, would there be a reason to use portainer or dockge once beta (or probably RC) is out? For people experimenting with homelab environments, I can see it being useful. For people who want turnkey, it's an extra app to update/manage.

    • @CaptStux
      @CaptStux  2 місяці тому +2

      @@DarthV506 if the app works for you, it will be just as efficient as configuring it yourself with compose.
      Compose gets you access to raw docker power, if that’s what you want, and means you can configure things that pre-built apps can’t do.

    • @DarthV506
      @DarthV506 2 місяці тому

      @@CaptStux Also cool to see that iX is keeping the app config page as close to the current one. Since most of the community and TC apps were just using other peoples' images, I'll probably do the same with custom apps where it makes sense. I'd much rather use their app ui to roll out custom compose than installing/maintaining dockge/portainer. If I was using VM/jail/baremetal linux for my apps, I'd use dockge or portainer to manage. Just don't want to manage more things with Scale :)

    • @CaptStux
      @CaptStux  2 місяці тому

      I don't think the full compose UI will make it into Beta, but hopefully it'll be ready for RC.1

    • @DarthV506
      @DarthV506 2 місяці тому +1

      @@CaptStux With beta slated for the 26th, I agree. I had thought about upgrading to beta, I'm ok with quirks. But in this case it's basically total breakage. I'll wait for RC in late Sept.

  • @sher0ya
    @sher0ya Місяць тому

    I am new to Ture Nas so forgive me if I ask stupid questions. I saw that you were able to set the port of the new container to a value less than 9000 which is currently impossible because of kubernetes. Even with that, would we still need to create a network bride for the apps in the container to access the host? I saw your other video that describes how to do it for VMs and was wondering if its going to be the same situation with the new release?

    • @CaptStux
      @CaptStux  Місяць тому +1

      You do not need a bridge for the native docker apps to access the host.

    • @sher0ya
      @sher0ya Місяць тому

      Thank you!

  • @chirriu
    @chirriu Місяць тому

    Hey there,
    Thanks for the guide. How will this affect the use of a Nvidia GPU? When creating a jail I would just uncomment the Nvidia line in the script and it would install all the necessary drivers. How will truenas EE handle this?

  • @ghstbrry
    @ghstbrry 10 днів тому

    Is there a benefit to pulling transcodes into its own separate dataset?
    By default, transcodes are nested inside the container's config path (/config/data/transcodes). Creating a config dataset and mapping that to the container's /config path should inherently handle mapping transcodes, right?

    • @CaptStux
      @CaptStux  10 днів тому +1

      There are some benefits. I choose to separate transcodes from the config so that I can snapshot and backup config, while skipping the ephemeral transcodes.

    • @ghstbrry
      @ghstbrry 10 днів тому

      @CaptStux Ah, that makes sense! I figured it was likely something like that. I suppose there's similar reasons to do the same with the metadata cache as well.
      Thanks for the guides btw! I'm completely new to the NAS world, so ive watched basically every setup guide on youtube at this point. Your series has been one of the most helpful.

  • @SodalisUK
    @SodalisUK 2 місяці тому

    Stux: my take away from this is that is will be easy to migrate Dragonfish jailmaker docker apps to EE once it is available. And so if you need a new app that is not in the Truenas Charts catalogue, this is a good way to go because you will have a decent migration path. Is that right?

  • @krowven
    @krowven Місяць тому

    Is it possible to have the apps installed in dockge to show in the apps list of truenas?
    not sure I understand how dockge connects to the host/truenas if this is not possible.

    • @CaptStux
      @CaptStux  Місяць тому

      There is an open feature request to show non-ix apps in the iX apps view. You could add a vote for the feature
      forums.truenas.com/t/display-non-ix-managed-stacks-and-containers-on-apps-screen/11617?u=stux
      Dockge is a docker compose management interface. The docker compose stack runs on the docker engine which is running on TrueNAS.
      TrueNAS does not show all apps/stacks that are running on the local docker engine in its GUI, only apps that were created by the TrueNAS apps system.

  • @jaymoores8258
    @jaymoores8258 10 днів тому

    I have about 30 containers currently running in sandbox, can i move them all out of data and into docker or does it need to be done individually ?

    • @CaptStux
      @CaptStux  10 днів тому

      The underlying `zfs rename`command doesn’t support wild cards I believe, but you can do it with a script if you want.

  • @TheCompatibleShow
    @TheCompatibleShow 19 днів тому

    Dumb question - what port is ix-dockge using? i can't figure it out, so i have Plex, etc installed via Apps, and some other installed through dockge. I can see ix-dockge in Dockge, but not sure how to access it or add it as a remote agent. I have Plex, Photoprism running out of that, but ideally want to have everything managed the same way.

    • @CaptStux
      @CaptStux  18 днів тому

      Its configurable. In my video I set it to 5001

    • @TheCompatibleShow
      @TheCompatibleShow 17 днів тому

      @@CaptStux Ah, my bad. I didn't explain my question properly. I am trying to ask for those apps set up directly through the catelog. Am i able to manage it that in dockge? I can see everything in there e.g. Plex but everything is grayed out and it says it's not managed by dockge. Is there any way that i can migrate it to dockge without losing anything?

    • @CaptStux
      @CaptStux  16 днів тому +1

      @@TheCompatibleShow no, you can't manage the TrueNAS "apps" with Dockge

  • @project_mini_hero
    @project_mini_hero 2 місяці тому

    I just wanted to confirm if this native app is running on a native docker engine or is it a k3s deployment of the app (app being dockge/portainer) ?

    • @CaptStux
      @CaptStux  2 місяці тому +1

      Native docker, v27 in fact.
      In Electric Eel apps are built using a combination of Jinja+Python+Compose

    • @project_mini_hero
      @project_mini_hero 2 місяці тому +1

      @@CaptStux thanks for your reply, also, thank you for your Jellyfin jail video. Keep up the great content. Looking forward to the hardware acceleration video

  • @roneycarter3548
    @roneycarter3548 2 місяці тому

    When I select the pool, configure the Apps service, and install the App, I don't see a dataset similar to ix-applications or ix-apps. This confuses me as I don't know if TrueNAS 24.10 actually stores the images and running data in the pool I selected.

    • @CaptStux
      @CaptStux  2 місяці тому

      The ix-apps dataset is invisible now.
      You can see it in the shell if you run “zfs list”

  • @redbullweb
    @redbullweb Місяць тому

    Is still possible to change apps or dockge ip?

    • @CaptStux
      @CaptStux  Місяць тому +1

      You can add an ip alias, and then bind ports to that, or you can add a macvlan network and then specify an ip on a specific container.
      If you want a separate ip for the whole docker install, that is best accomplished with a sandbox.

  • @MrGtagangster
    @MrGtagangster 2 місяці тому

    I'm not a guru at all, I'm more confused than ever.
    I currently host mostly all apps natively from Truenas Scale apps, and only have one DockGe jail running speedtest-tracker, however should I go for EE train, how can I ensure I can keep using 1 IP adress for every app (planning to keep Nginx Proxy Manager).
    I tried changing the network to a bridge with your other tutorial, but somehow that screwed my whole Plex app and it took me a few hours to get that working again (wouldn't boot).
    What would your advise be? Change over to EE whilst its in beta or keep using normal release for now (DF).
    I actually want to run more apps than I'm allowed now with k3s, but also very, very afraid to break my Plex (again).

    • @CaptStux
      @CaptStux  2 місяці тому

      You should keep an eye on this page which shows when TrueNAS apps are supported for migration:
      github.com/truenas/apps
      When you apps are available for migration, then you can migrate to EE.
      BUT, if you are using TrueCharts apps (which are not made by IXsystems / TrueNAS) then you will have to migrate them to docker compose manually, ie using Dockge on Dragonfish or EE-Beta1
      I demonstrate using Dockge with Docker in my Sandbox video
      ua-cam.com/video/S0nTRvAHAP8/v-deo.html
      And then when EE comes out, you can if you choose, migrate to the native docker.
      Regarding your specific issues with Plex...
      Plex is available on EE now as a native app with a migration... its hard to say what the issues were
      The safest thing to do when setting up apps is to use a hostPath mount instead of ix-volumes as this will allow you to easily migrate your app/data and backup and restore it however you choose

  • @epictetus8028
    @epictetus8028 2 місяці тому

    Just out of interest, are you British or American? Seem to be a mix of the two.