Jump to content

Really struggling with setting up Docker. Could use some help.


Herdo

Recommended Posts

I'm really confused on how to setup Docker.  I've been following the LimeTech Official Docker Guide, and a lot of it doesn't seem to make sense.

 

First it tells me I need "A share created called “appdata” that will be used to store application metadata."  Is this a User Share?  What if I want to store it on my cache disk?

 

Then further down it tells me to place the Docker image at /mnt/cache/docker.img.  OK, done.

 

Now I'm trying to add Couch Potato.  I've added the linuxserver.io repository and I'm t trying to map the volumes.  The problem is, the "config" directory in the screenshot doesn't exist on my server:  /opt/appdata  Am i suppose to just create this directory?  I swear that I read something to the effect of "an appdata folder will be created by the system."  I can find anything like this anywhere when SSHed into the server.  I have checked every directory using ls -al.

 

Also, the next volume mapping says "/mnt/user/bysync".  Isn't /mnt/user where User Shares are located?  Am I suppose to create a User Share for each Docker app? 

 

 

 

I found this post which seems to make a bit more sense, but I'm not sure what to do exactly:

http://lime-technology.com/forum/index.php?topic=40937.msg387520#msg387520

 

I'm just really confused by all of this. 

Link to comment

I'm really confused on how to setup Docker.  I've been following the LimeTech Official Docker Guide, and a lot of it doesn't seem to make sense.

 

First it tells me I need "A share created called “appdata” that will be used to store application metadata."  Is this a User Share?  What if I want to store it on my cache disk?

Ideally, it should be stored on the cache drive.  Create the share and set it to be "cache-only"
Now I'm trying to add Couch Potato.  I've added the linuxserver.io repository

Don't even bother messing around with adding repositories.  Complete waste of time and more aggravation than its worth (LT doesn't even recommend doing it that way anymore).  Install the Community Applications plugin (link in my sig) and experience the love, not the frustration.

and I'm t trying to map the volumes.  The problem is, the "config" directory in the screenshot doesn't exist on my server:  /opt/appdata  Am i suppose to just create this directory?  I swear that I read something to the effect of "an appdata folder will be created by the system."  I can find anything like this anywhere when SSHed into the server.  I have checked every directory using ls -al.
the appdata share will be created when you create the share above.  What you're doing is comparing the docker guide using one container and taking it at face value for another.  The /config (container volume) you will map it to something like /mnt/cache/appdata/CouchPotato.  You fill in the host paths, and leave the container paths alone (unless you need to add more paths)

Also, the next volume mapping says "/mnt/user/bysync".  Isn't /mnt/user where User Shares are located?  Am I suppose to create a User Share for each Docker app? 

No, you would create the appdata share and then put all of the /config mappings into it.

 

Mappings are a PITA to explain with relation to docker, but its one of those things that once you understand, you'll be amazed at how easy it actually is and makes the whole thing easier to work with.  You might want to check out these other links in the FAQ for some more info on mappings: http://lime-technology.com/forum/index.php?topic=40937.msg387919#msg387919 and http://lime-technology.com/forum/index.php?topic=40937.msg488507#msg488507

 

Additionally, it wouldn't be a bad idea to install the Fix Common Problems plugin (link again in my sig), as it will look for some common mistakes with regards to docker mappings, ports, etc.

Link to comment

Wow, thanks Squid!  That was a ton of helpful info.

 

 

I actually think I figured it out.  I think part of the problem was that I had my settings>Global Share Settings>Cache Settings>Use cache disk: setting set to "off".  I planned on just using it as a disk for Docker and downloading the initial files before Couch Potato and Sonarr moved them.  I turned that back on stuff started to make more sense. 

 

Don't even bother messing around with adding repositories.  Complete waste of time and more aggravation than its worth (LT doesn't even recommend doing it that way anymore).  Install the Community Applications plugin (link in my sig) and experience the love, not the frustration.

 

This is amazing!  Thank you; you've done a wonderful job with this.  I was actually going to delete the Couch Potato plugin, but I started up the Apps and it recognized it as installed already.  Is there any harm in leaving Couch Potato installed or should I start over?  I'll definitely be using this to install plugins from now on.

 

 

the appdata share will be created when you create the share above.  What you're doing is comparing the docker guide using one container and taking it at face value for another.  The /config (container volume) you will map it to something like /mnt/cache/appdata/CouchPotato.  You fill in the host paths, and leave the container paths alone (unless you need to add more paths)

 

I just mapped the /config container volume to /mnt/cache/appdata/CouchPotato and it created the directories and now I can see a new share called "appdata". 

 

I then set the "appdata" share to "Use cache disk: Only" in the settings.  I did the same for the /downloads volume and now I have a second share called "downloads" (and set to cache only).  And then mapped /movies to my /mnt/user/Movies share.

 

 

 

Thanks again for the help Squid!

 

 

 

EDIT:  Ohhhhh...  I think I get it.  I CAN create a new User Share called "appdata" on the cache drive if I click "Use cache disk: Only" when creating it.  OK, that makes sense.

 

Well, is the way I did it improper?  Should I delete my "appdata" and "downloads" shares and start over?

Link to comment

 

This is amazing!  Thank you; you've done a wonderful job with this.  I was actually going to delete the Couch Potato plugin, but I started up the Apps and it recognized it as installed already.  Is there any harm in leaving Couch Potato installed or should I start over?  I'll definitely be using this to install plugins from now on.

Doesn't matter.  When push comes to shove, all CA does is utilize the exact same routines to install docker / plugin apps that the base OS does.  It just organizes it better.

 

BTW, a plugin is a type of app, and a docker is another type of app.  Should you run into trouble, posting that you're having trouble with such-and-such plugin is going to cause some real confusion with anyone who helps here if when you're actually using a docker app.  As you've no doubt noticed, going to Installed Apps and then clicking Support on whichever app you're having trouble with will take you to the proper place to post.

 

OK, this sounds like what I did.  I just mapped the /config container volume to /mnt/cache/appdata/CouchPotato and it created the directories and now I can see a new share called "appdata".  I'm not suppose to be creating a new share through the webui itself right?  I think that was what was confusing me most, because I couldn't figure out how to create a new "User Share" on a cache disk. 

Net result is the same.  Docker will automatically create the share, but technically, the proper way to do it is to create the share beforehand via the Shares tab (and set it to be cache-only)

To clarify, when you say:

 

Create the share and set it to be "cache-only"

 

You don't mean physically navigate to Shares>Add Share and then create a new share, you mean create it by creating adding a new Docker container, right?

Nope I mean Add Share, but both methods happen to work.  See below

 

So in other words, I don't:

 

  • 1. Create a User Share called app data on the cache disk by navigating to "Shares>Add Share"
  • 2. Install the plugin and point the host path to the User Share on the cache disk

 

But I DO:

 

  • 1. Install the plugin and point the host paths to /mnt/cache/appdata/PLUGIN_NAME
  • 2. Doing this actually creates the User Share called "appdata" for me

 

Both have the same result.  The "I Don't" list is the correct way of doing things, but the "I Do" also works. 

 

Why it works is because unRaid treats all top-level folders in /mnt/user (or on any of the individual disks) as a share.

 

 

Link to comment

Thanks Squid, you caught my reply before I edited it, haha.

 

I was confused because I hadn't seen the "Use cache disk:"  setting when you create a new Share.  I see now that you can select "Use cache disk: Only" when creating the Share to, well, only use the cache disk.

 

You answered all my questions and even preemptively answered my edit, haha.

 

BTW, a plugin is a type of app, and a docker is another type of app.  Should you run into trouble, posting that you're having trouble with such-and-such plugin is going to cause some real confusion with anyone who helps here if when you're actually using a docker app.  As you've no doubt noticed, going to Installed Apps and then clicking Support on whichever app you're having trouble with will take you to the proper place to post.

 

That's good to know, thank you again Squid!

Link to comment

I hope nobody minds if I hop into this thread with a newbie question...

 

I've been messing around with getting PMS, sickrage, delugevpn, and also got an RDP-calibre docker going with my book library.

After tinkering for a month or so, I realize that my parity and disk1 never spin down.

I've set the /config directories to /mnt/user/appdata, which I, sure enough, had set to Use cache disk=no, vice only.

If I simply change this option back to "only," will it move the data while keeping the /mnt/user/appdata path?

I think I initially didn't want to burn up my cache disk space with /config data, but now I see that it's keeping the array from spinning down.

 

Anybody have a suggestion for the best way to proceed? Thanks!

 

Josh

 

Link to comment

I hope nobody minds if I hop into this thread with a newbie question...

 

I've been messing around with getting PMS, sickrage, delugevpn, and also got an RDP-calibre docker going with my book library.

After tinkering for a month or so, I realize that my parity and disk1 never spin down.

I've set the /config directories to /mnt/user/appdata, which I, sure enough, had set to Use cache disk=no, vice only.

If I simply change this option back to "only," will it move the data while keeping the /mnt/user/appdata path?

I think I initially didn't want to burn up my cache disk space with /config data, but now I see that it's keeping the array from spinning down.

 

Anybody have a suggestion for the best way to proceed? Thanks!

 

Josh

You will have to move the data from the array to the cache disk manually.

If you set the share to use cache only and move the appdata folder from /mnt/disk1 to /mnt/cache you will still be able to use /mnt/user/appears path.

Link to comment

Thanks!

 

Just out of curiousity, what's the difference between /mnt/disk1/appdata and /mnt/user/appdata? Does it matter which I move to /mnt/cache/appdata?

Still not sure what unRAID does from a file structure standpoint with user shares. What's /mnt/user0?

 

Thanks again!!

Josh

Link to comment

Thanks!

 

Just out of curiousity, what's the difference between /mnt/disk1/appdata and /mnt/user/appdata? Does it matter which I move to /mnt/cache/appdata?

Still not sure what unRAID does from a file structure standpoint with user shares. What's /mnt/user0?

 

Thanks again!!

Josh

/mnt/disk1/appdata forces all of the appdata files to be on disk #1.  /mnt/user/appdata allows unRaid to put them onto any disk in the array according to your allocation method and split levels.

 

Under 6.1 it is highly recommended to always have your /config folders refer to either /mnt/diskX/appdata or /mnt/cache/appdata and to never use /mnt/user/appdata

 

On 6.2 you can use either, but its still recommended to confine appdata to the cache drive (for performance reasons)

 

Since you had originally set appdata to be /mnt/user/appdata, if its not a major inconvenience, you're going to be better off completely deleting all of the appdata and starting it over again (if you're running 6.1.9)  There are a multitude of issues with Plex running /mnt/user/appdata on 6.1.9 that disappear when it runs on /mnt/cache/appdata  (and unfortunately you just can't copy the files over to the cache drive and have it fix those little issues that just pile up)

 

On the other hand, if you are running 6.2 already, then instead of setting use cache=yes, set it to use cache=prefer and then run the mover.  Everything should be working perfectly.

Link to comment

 

/mnt/disk1/appdata forces all of the appdata files to be on disk #1.  /mnt/user/appdata allows unRaid to put them onto any disk in the array according to your allocation method and split levels.

 

Under 6.1 it is highly recommended to always have your /config folders refer to either /mnt/diskX/appdata or /mnt/cache/appdata and to never use /mnt/user/appdata

 

On 6.2 you can use either, but its still recommended to confine appdata to the cache drive (for performance reasons)

 

Since you had originally set appdata to be /mnt/user/appdata, if its not a major inconvenience, you're going to be better off completely deleting all of the appdata and starting it over again (if you're running 6.1.9)  There are a multitude of issues with Plex running /mnt/user/appdata on 6.1.9 that disappear when it runs on /mnt/cache/appdata  (and unfortunately you just can't copy the files over to the cache drive and have it fix those little issues that just pile up)

 

On the other hand, if you are running 6.2 already, then instead of setting use cache=yes, set it to use cache=prefer and then run the mover.  Everything should be working perfectly.

 

 

Hey again, Squid.  I actually have a related question.  I know mapping appdata to cache directly is a good idea, but what about my "cache only" user shares?  I've got them set to cache only, so I doubt it matters, but I've currently got all the docker volumes mapped directly to the cache rather than "user".  See the image below please.

 

ojAiI9x.png

 

 

Is this OK?  The stuff that is cache only (/downloads  <->  /mnt/cache/MovieDownloads  for instance) is mapped directly to the cache, however the stuff I want on the array is mapped to the /user/shareName (/movies  <->  /mnt/user/Movies  for instance).  Based on my understanding of user shares, I doubt this matters because the shares on the cache are cache only user shares anyways.

 

Also, I've noticed there is a /mnt/user/ path as well as a /mnt/user0.  I have everything mapped to "user", but what is the difference?  I've noticed that "user0" only contains my "Movies" and "TV" user shares, not "appdata", "TVDownloads" or "MovieDownloads".

 

Everything has been working just fine with these settings, I'm just curious to know if I have things setup correctly.

 

Thanks again Squid, you've been a huge help!

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...