Install CouchPotato using Docker – Automatic Movie Downloads

In our previous posts, you learned how to install Sickrage in Docker, a service that allows you to automate your TV show download by creating watch lists and automatically download them when they are available. Couchpotato is a similar service, made specifically for movies. You just add your wanted movies and Couchpotato will automatically search them and download the best quality. If i got your interest, continue reading and learn how you can install Couchpotato using Docker in just a few easy steps.
Must Read: Ultimate Smart Home Media Server with Docker and Ubuntu 18.04 – Basic
If you do not know what Docker is, be sure to read our What is Docker guide and comparison to VirtualBox in advance and get familiarized with the terms used. [Read: What is Usenet and why is it better than Torrents?]

Install Couchpotato using Docker

Before starting the Docker Couchpotato installation guide, make sure to follow our previous guides where you can learn to Install Docker on Ubuntu, Windows 10 Pro/Ent, and Windows 7 and 8.

Install Couchpotato Using Docker
Docker Commandline Prompt

You can install Couchpotato using Docker in a new Docker container from scratch. But, ready-made containers are already available for several apps on Docker Hub. So all you need to do is pull those containers and install. If you are ready, open Docker command prompt and get ready to setup Couchpotato in Docker.

>3000 days, unlimited, SSL, VPN$9.99 $99.99 ($8.33 / month)
Editors Pick
>3000 days, unlimited, SSL, VPN$9.99 $99.99 ($8.33 / month)
>3000 days, unlimited, SSL, EU Servers€7,50 (Special!!!) 
For more plans that may fit your needs please read our Usenet plan selection guide.

1. Couchpotato Pull Command

To install Couchpotato using Docker, you will first need to grab the latest version of Couchpotato container from the linuxserver Docker Hub. LinuxServer is a Docker repository with several HTPC and home server app containers.

docker pull linuxserver/couchpotato

Pull the ready-made Couchpotato docker container using the above command.

2. Set Couchpotato Configuration Parameters in Docker

After pulling the container with the latest version of Couchpotato, we need to configure the usage parameters such as download folders, port number, etc. for the service. Copy all lines in the code block below (it is one single command) and paste it into docker prompt.

sudo docker create --name=couchpotato \
--restart=always \
-v /home/docker/couchpotato/config:/config \
-v /home/docker/couchpotato/downloads:/downloads \
-v /home/docker/couchpotato/movies:/movies \
-e PGID=1001 -e PUID=1001 \
-e TZ=Europe/London \
-p 5050:5050 \

While you can just copy and paste the settings mentioned above, I recommend that you understand each parameter using the description below and customize it to your liking, in order to setup Couchpotato in Docker. Therefore, before issuing the above docker command, change certain parameters (eg. port number, folders, etc.) to fit your situation.

  • sudo docker create --name=couchpotato \ - Creates a new docker container with the name "couchpotato"
  • --restart=always \ - Starts the Couchpotato container automatically during boot.  If you don't want the container to be started automatically, you can skip this command.
  • -v /home/docker/couchpotato/config:/config \ - Specifies the location of the Couchpotato config files. In this case, the config folder is located in /home/docker/couchpotato/ directory.
  • -v /home/docker/couchpotato/downloads:/downloads \ - Specifies the location of the downloads folder. In this case, the downloads folder is located in /home/docker/couchpotato/ directory.
  • -v /home/docker/couchpotato/movies:/movies \ - Specifies the location of the movies folder. In this case, the downloads folder is located in /home/docker/couchpotato/ directory.
  • -e PGID=1001 -e PUID=1001 \ - Specifies the user id in order to minimize permission issues that can arise between the host OS (Ubuntu) and the container.
  • -e TZ=Europe/London \ - Specifies the timezone information. You can check your timezone by following this link.
  • -p 5050:5050 \ - Specifies the ports used by Couchpotato. In this case, the port is 5050:5050.

3. Start and Stop Couchpotato Container in Docker

If you used the correct parameters, you can go ahead and start the Couchpotato container you have just created, using the following command.

sudo docker start couchpotato

After starting the Couchpotato Docker container, you will be able to open the web interface on port 5050. In my case the ip is

Install Couchpotato Using Docker
Couchpotato Homepage

You can now start configuring Couchpotato by following the wizard. Try to fill in each of the settings as much as you can. This will improve the way Couchpotato works for you. 

4. Updating Couchpotato in Docker

Couchpotato is now running in Docker and probably you are wondering how can you keep up to date with the latest bugfixes and features the Couchpotato developers do. All you need to do is check for updates regularly.

Setup Couchpotato In Docker
Check For Updates In Couchpotato

In order to do that, we need to click on the Settings icon from the bottom left, then click on Check for updates . By clicking on the Check for updates button, we can trigger the download for the latest version of Couchpotato.

Couchpotato is now installed in Docker. What to do next?

Congratulations! You managed to install Couchpotato using Docker successfully. Once Docker is setup, it is extremely simple to create and destroy containers with apps. If you want to be able to access the Couchpotato interface outside your home network, be sure to setup port forwarding on your router. You will have to forward the Couchpotato port to the local/internal IP address of the system with Docker installation.

Next, you can install Sonarr in Docker or Sickrage to manage your TV Show downloads (if you haven’t done that already). Check back soon to learn more about Docker and how you can install various other services in Docker containers.


Did this post help you?
SmartHomeBeginner brings in-depth tutorials easy enough to understand even for beginners. If you are reading this, please consider buying us a coffee (or two) as a token of appreciation.


Ciprian is an enthusiast, always up to date with the latest and greatest in the IT field. Passionate about computers, mobile devices and gadgets. In his spare time, he is a gamer.