CHBMB Posted February 26, 2017 Share Posted February 26, 2017 (edited) I can see the dockerfile, how do I use that information to create a template for Unraid?@lionelhutz has done a fantastic job of explaining this here. Edited February 26, 2017 by CHBMB Quote Link to comment
Squid Posted February 26, 2017 Share Posted February 26, 2017 (edited) How can I run another docker container from dockerHub part 3 If the above two posts don't make sense to you, then you can also set Community Applications (apps tab) to try and automate the above instructions for you. Go to settings, Community Applications General Settings and enable docker hub searches. Then search for the appropriate container via Community Applications. When adding the app, CA will attempt to perform those steps listed above for you. However, it is not an exact science scraping webpages, so the success rate will vary (probably right now about 80% success rate). Additionally, any environment variables which the application may or may not use/require are impossible for CA to discern and must be added manually, as per CHBMB's instruction's above. Additionally, there is no guarantee that any particular container found on dockerHub is not an abandoned project and will even work in the first place, nor is it really possible for support for the containers found on dockerHub to be given on the unRaid forum beyond basic template setup. Edited February 26, 2017 by Squid Quote Link to comment
CHBMB Posted February 26, 2017 Share Posted February 26, 2017 I want to change the port my docker container is running on or I have two containers that want to use the same port, how do I do that? So say you had four apps with random docker container ports, just edit like this... Don't change the container port as you can see in this bit of a Dockerfile (code used to generate a container) from nzbget, only 6789 is actually "exposed" so even if you change it in the app's webui to 6788, it won't be able to communicate as only 6789 is exposed to the host at the container/host interface. # ports and volumes VOLUME /config /downloads EXPOSE 6789 Quote Link to comment
CHBMB Posted February 26, 2017 Share Posted February 26, 2017 Why it's important to understand how folder mappings work... and an example of why it goes wrong. In this issue the poster had /downloads mapped to /mnt/cache/appdata/NZBGet/downloads/ in nzbget and in Sonarr it was mapped to /mnt/cache/appdata/NZBGet/downloads/completed/Series//downloads should be the same folder in both containers, change the Sonarr one to match NZBget. Otherwise it's like this:NZBGet: I put that file in /downloads/somefolder/ for you: (/mnt/cache/appdata/NZBGet/downloads/somefolder/)Sonarr: Thanks I'll take a look in /downloads/somefolder/: (Looking in /mnt/cache/appdata/NZBGet/downloads/completed/Series/somefolder/)Sonarr: I can't see it in /downloads/somefolder/NZBGet: You fricking blind or something?! It's right there! NZBGet could be substituted by deluge/rtorrent/sabnzbd Sonarr could be substituted by Couch/Sickbeard/Sickrage Principles still apply. Quote Link to comment
kizer Posted February 27, 2017 Share Posted February 27, 2017 How do I Stop/Start/Restart Docker via Command Line Easily with these simple commands. docker stop dockername [Stops Docker] docker start dockername [Starts Docker] docker restart dockername [Stops and restarts running Docker, if not running starts Docker] Want to put it in a script? Start Plex for example: #!/bin/bash docker start Plex Quote Link to comment
RobJ Posted February 28, 2017 Author Share Posted February 28, 2017 Why doesn't the "Check for Updates" button bring my Docker to the newest version of the application? The "Check for Updates" button on the DockerMan page checks if the author of the Docker Container made changes to the container itself, not if the Application itself has an update. The changes include how it installs your program or other things on the backend. If the author has built-in a way to update the application (Restarting the docker, in the Web-UI of the Application) it won't show with the "Check for Updates" button.How do I update to the newest version of the application? This isn't consistent across every container, but there are a few common ways to do this. The specific way of updating should be spelled out by the author. Some applications update by stopping the container and restarting it - Example: needo's Plex Docker Some applications update through the built in updater in the WebGUI of the application - Example: smdion's Headphone Docker Some applications are hard coded to a specific version, but allow for a Bleeding Edge install. This goes out and downloads the newest version. NOTE: Not always guaranteed to work - Example: smdion's Beets Docker This is done by enabling "Advanced View" in the specific docker page (slider in the upper right hand corner) and setting a new Environmental Variable to EDGE=1 Original author: @smdion Once smdion creates a dummy post in this thread, the content here will be moved to it, restoring ownership to smdion. Quote Link to comment
RobJ Posted February 28, 2017 Author Share Posted February 28, 2017 Where are my downloads stored? Why can't I find my downloads from one Docker in another Docker? Why can't I see my (something) folder in the Docker? These and other, similar questions and complaints are very frequent, and all stem from the container volume and host path settings in the Docker setup. I think it starts with the docker authors offering some 'suggestions' for their containers, which point towards setting up things like /tv or /downloads in the container volume, then mapping it to that specific part of the unRAID setup using the host path box. People often setup things like [container volume] /tv pointing to [host path] /mnt/user/video/TV. This results in the user picking /tv as the path in the docker setup, but only being able to see all the subdirectories they have under /mnt/user/video/TV in their unRAID setup. With this config, they can't see anything in /mnt/user/video/Movies for example. To see items in this directory they need to set another, different container/host config in the docker setup. I struggled with this also when I first got started with Dockers, then someone (can't remember who, sorry) suggested I just map [container volume] /mnt/user pointing to [host path] /mnt/user. This works perfect for me, and has for the last year or so. The benefit of this method is that all your dockers will see your directory structure the exact same way, which is the same way you navigate it in unRAID itself. You have full access to all of your user share directories in all of your containers, so it doesn't matter what folder you choose to have SABnzbd download into, you can get to that same folder from any/all other dockers. If you decide to change the download folder (or anything) in one docker, it's easy to point to the new place in your other dockers, without having to change the config of the other dockers. Some have suggested there is a security issue with this method because you're allowing your dockers access to folders they don't need access to, but really, as long as you use /mnt/user, you're only allowing them access to your user shares, not any important unRAID stuff (flash is not accessible with this method), so I personally don't consider this a security issue. Now, if you just mapped /mnt to /mnt, then you're giving direct access to the individual disks, which I would not suggest. I personally wish dockers didn't offer /tv or /movies or /downloads in the default config, as it just leads to confusion and LOTS of the same questions by folks new to the docker system. Once you've used it, and understand what these mappings do, it's easy to add a /tv to /mnt/user/video/TV mapping if you choose, but starting people unfamiliar down this path has led to more frustration than happiness, from what I've seen of the questions it brings. Original author: @JustinChase Once JustinChase creates a dummy post in this thread, the content here will be moved to it, restoring ownership to JustinChase. Quote Link to comment
RobJ Posted February 28, 2017 Author Share Posted February 28, 2017 Why does my docker.img file keep filling up while using Plex?April 2016: recent versions of Plex (0.9.16.3, maybe earlier) transcode to the config directory by default, so there is no need to make the changes described below. If you have already configured your plex with a custom transcode directory that is fine, it will not hurt anything. Regardless of which Plex Docker you choose, you'll want to configure it to transcode outside of your main docker image. This will help prevent your docker image from filling up. Step 1: On the unRAID Docker settings page for Plex, add a new Volume Mapping (Read/Write). The "Container volume" should be set to "/transcode", for the "Host path"... Option 1: A good default host path would be in the appdata folder on your cache drive, i.e. if your /config directory is set to: /mnt/cache/appdata/Plex/ then the /transcode directory could be: /mnt/cache/appdata/Plex/transcode/ Option 2: If you have a lot of RAM you can save wear and tear on your cache drive by transcoding in RAM. In that case, set the /transcode host path to: /tmp Note: Since about Plex version 0.9.14, transcoding to RAM does not work. Recommend avoiding this option. Step 2: Save your changes to restart Plex, then from within Plex go to Settings -> Server -> Transcoder. Hit the "Show Advanced" button, and in the "Transcoder temporary directory" field put "/transcode" and then "Save Changes". That's it! For further reading... If you are curious about the other transcoder settings, see this help page on the Plex website See this thread for further discussion on transcoding in RAM. If you continue to have problems with your docker image filling up, discuss it here. Here is a discussion on finding docker containers with large log files. Original author: @ljm42 Once ljm42 creates a dummy post in this thread, the content here will be moved to it, restoring ownership to ljm42. Quote Link to comment
saarg Posted February 28, 2017 Share Posted February 28, 2017 How Do I Pass Through A device To A Container? To pass through a device to a container you use the device tag in the Extra Parameters field in the container template. It is only visible in advanced mode. The device tag looks like this: --device=/path/to/device Let's say we want to pass through a USB to RS232 adapter to a container. When you connect the adapter to the unRAID server you will see that a device is created in /dev/. If this is the only USB to RS232 adapter you have it will most likely get /dev/ttyUSB0. To pass this through to the container we add the below in the Extra Parameters field. --device=/dev/ttyUSB0 When you start the container again, you should have the device available. If the device do not get a device created in /dev/ you can pass it through using the bus path. Let's say we want to pass through a PC/SC card reader. To find the correct path go to Tools --> System Device in the webgui and find your device in the USB device section. In my case I want to pass through my OmniKey CardMan 6121. Bus 002 Device 003: ID 076b:6622 OmniKey AG CardMan 6121 The important info here is the Bus and Device number. The first part of the path is always the same, /dev/bus/usb/. After that comes the Bus number, then the Device number like this: /dev/bus/usb/Bus/Device. So in my case it will be like below. --device=/dev/bus/usb/002/003 USB device can be passed through without installing the driver in unRAID, but will need the driver installed in the container. For devices like a PCIe DVB card, the driver must be installed in unRAID. In short I guess one could say that a device can be passed through as long as a device is created in /dev/. The device tag will follow the path recursively and add every device found to the container. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.