How to install Docker (and Portainer) on a RaspberryPi and run millions of apps on your RaspberryPi!

Поділитися
Вставка
  • Опубліковано 22 лип 2024
  • This Tutorial goes over how to install and setup docker and Portainer on a RaspberryPi. This allows you to easily run millions of docker containers on your RaspberryPi to do anything from host a Wordpress website to block ads with PiHole.
    #Docker #RaspberryPi #Tutorial
    Hire Me! www.spacerex.co/hire-me/
    Sponsor the Channel: / spacerexwill
    Steps / videos mentioned
    Setup SSH on RaspberryPi: • Introduction to Raspbe...
    Code to install docker: curl -sSL get.docker.com | sh
    code to install Portainer : sudo docker run -d -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:linux-arm
    Amazon Links:
    RaspberryPi 4: geni.us/PLknu
    Cooling Case for the Pi (Better performance): geni.us/o9I4lOK
    Micro SD Card: geni.us/UBuiCTR
    External Hard drive: geni.us/GoEPF
    Samsung SSD: geni.us/SAaNeIZ
    *These are Amazon affiliate links, which means that if you purchase a product through one of them, I will receive a small commission (at no additional cost to you). Thank you for supporting my channel!
  • Наука та технологія

КОМЕНТАРІ • 180

  • @Phrozends
    @Phrozends 2 роки тому +36

    Great video! Thank! Just a note, the -v in the docker command is for volumes, it maps the first path (docker container) to the second path (after the colon), which is a folder on the host operating system. That is how docker containers can persist data if they are killed or restarted.

  • @Jeffrey_Mason
    @Jeffrey_Mason 9 місяців тому +1

    Best video yet. I have redone my PI about 4 times following other videos. Worked the first time with yours.

  • @techmattr8483
    @techmattr8483 3 роки тому +8

    -v is volume not variable. The docker.sock is mapping the local docker volume so portainer can manage the local docker resources.

  • @bassam.2023
    @bassam.2023 2 роки тому +3

    Of course, my favourite Raspberry Pi channel pops up when I want to install docker on my RPI :)

  • @matthewreid9502
    @matthewreid9502 2 роки тому +12

    Excellent, excellent video. Everything was so clearly explained and shown. Told me why I was doing things and what they were. Thanks so much!

  • @seniorchief6136
    @seniorchief6136 Рік тому

    Thanks for the video. I will try this. I'm planning to build my own home lab and dive deeper into networking, virtualization, containers etc. But this seems like a nice way of trying it out before I go full into it, plus I already have a pi that's never been used.

  • @Joooooooooooosh
    @Joooooooooooosh 2 роки тому +29

    -v does not stand for variable. It stands for volume.

    • @therealjackfisher
      @therealjackfisher 6 місяців тому

      who cares, it could stand for vandalism and i could care less. Geek language makes no sense anyways, so variable or volume, same thing.

    • @Joooooooooooosh
      @Joooooooooooosh 6 місяців тому

      @@therealjackfisher then you may wanna choose another line of work I dunno what to tell you.

    • @therealjackfisher
      @therealjackfisher 6 місяців тому

      @@Joooooooooooosh back in the days if you saw me on DOS your jab would drop, and you would be the one to choose another line of work. It dont matter if you know what it stand for as long you know how to use it. If I had to explain everyone what everything means when writing extremely complicated batch files nobody would remember anything. Trust me there was sick amount of programming involved in making batch files with menus, sub menus, and without flooding screen with crap you dont want to display. These days are over and I didnt have any reasons to use Linux before now because Linux sucked, and it still kinda does, but there are more uses for this in private homes today then lest say 10 years ago.

    • @Joooooooooooosh
      @Joooooooooooosh 6 місяців тому

      @@therealjackfisher variables and volumes are two distinctly different concepts in docker. They are not interchangeable.

  • @PortainerIO
    @PortainerIO 3 роки тому +28

    Thanks for the great tutorial! I've added it to our UA-cam playlist 'Videos from the Portainer Community'. :)

  • @johngoverts4166
    @johngoverts4166 3 роки тому +4

    Great video, thanks! I had been planning to try this stuff, but since I am a relative newbie on Docker and Portainer I was somewhat apprehensive to go ahead and try. You managed to get me going within a quarter of an hour. Kudos!!

    • @SpaceRexWill
      @SpaceRexWill  3 роки тому

      haha Im glad! Portainer really just makes everything so much easier

  • @iPigee
    @iPigee 6 місяців тому

    I find the best tutorials right here on your page. Thank you, and Happy New Year, brother.

  • @Frank-do1bg
    @Frank-do1bg Рік тому

    This is the cleanest tutorial. Love the way you explained everything!

  • @tamasbarabas574
    @tamasbarabas574 Рік тому

    Thank you very much!
    I'm pretty green to this things. This tutorial was easy to follow and I got some good results even on a very old RPI. 😎🙏

  • @tizahex
    @tizahex 3 роки тому

    Nice tutorial! I would like to see more content for raspberry pi and networks. Keep up the good work.

  • @ralf2403
    @ralf2403 2 роки тому +2

    Super! please make more Raspberry Docker videos because most of the tutorials on YT are useless.. Thanks to your videos I set up my Raspberry and VPN :)

  • @joelnork9363
    @joelnork9363 Рік тому

    Thanks for the video, just an update to help others, docker will not pull portainer with the command give if you are running 64bit, however if you run sudo docker pull portainer/portainer-ce that should work. Happy learning.

  • @C3PO_
    @C3PO_ Рік тому +2

    Thanks very much for your concise and very useful tutorial! As a newbie to Linux and Docker, may I ask whether I need to manually update the pulled Docker images from time to time? If yes, how? Do I need to stop the corresponding containers before updating? Many thanks in advance!🙏

  • @tommilton6024
    @tommilton6024 2 роки тому +2

    Thanks for the video, did you do any follow ups? I'm interested in whether you could pop pihole, home assistant and things like that within this setup? Thanks 👍

  • @jmccamb
    @jmccamb 2 роки тому

    Thank you for this. Do you know if a Pi 2 or 3b+ will be able to handle this?

  • @stuu3270
    @stuu3270 6 місяців тому

    A voice I could listen to all day! Good tutorial too!

  • @nepsky
    @nepsky 3 роки тому

    Looking forward to seeing more similar contents in the futures. Thank you.
    Regards,
    Your old Subscriber.

  • @kevinhsin630
    @kevinhsin630 Рік тому

    I had troubles using the sudo docker r and sudo docker rm portainer command. I went about having to do docker stop portainer, then sudo docker rm portainer to remove the container.

  • @magicmanchloe
    @magicmanchloe Рік тому +2

    the portainer-ce:linux-arm returned an error no matching manifest. but i was able to get it working useing portainer-ce:latest you can just run that if anyone else has this issue.

  • @MrStefanokj
    @MrStefanokj 11 місяців тому

    Is there an alternative to portainer for arm v6 processors? Because I have a rasberry pi zero w and portainer is not supported :(

  • @zsquresh
    @zsquresh 2 роки тому +1

    Great! Quick and precise!

  • @StellarDudes
    @StellarDudes 2 роки тому

    hi there! kept getting " Error response from daemon: failed to create endpoint portainer on network bridge: failed to add the host (veth 0695a4) sandbox (veth 2cd0e4) pair interfaces: operation not supported." but many people said to reboot and good to go but that hasnt worked for me , any suggestions ?

  • @PilotOdyssey
    @PilotOdyssey 2 роки тому

    Ok I have it running do you have a tutorial for finding, installing then running Containers in Portainer you kind of glossed over the details.
    Thanks

  • @samone5618
    @samone5618 2 роки тому

    I like the quick method on updating the Docker but I got this error at the end "Failure unable to initiate communications with endpoint" how to resolve this or else I have to delete the whole thing and search another set up. Thanks buddy

  • @kolemieux
    @kolemieux Рік тому

    Exceptional video and explanation - thanks for sharing!

  • @chrisblumarten
    @chrisblumarten Рік тому

    your videos are so incredibly helpful. thanks for making them.

  • @JD-sb7mq
    @JD-sb7mq 2 роки тому

    so im trying to pull the HOOBS image from dockerio and I keep getting a timeout error I don’t know how to fix. The first time I got this error when I was pulling the portainer image but rebooting my pi fixed it.
    Could someone explain what I need to do to fix that?

  • @WesselLemmer
    @WesselLemmer 2 роки тому

    Really appreciate you explaining commands

  • @zk_6312
    @zk_6312 Рік тому

    Interesting video, I have never heard of portainer or even docker until recently. How does docker and portainer handle system commands that need the sudo command? For instance, I am running a 3D printer application called Octoprint, but it needs to use the system commands for shutting down, rebooting, and restarting the octoprint service. So far I have not figured out how to do this so the commands don't do anything. Looking at the docker logs it says docker does not recognize or can't find the sudo command.

  • @fate2022
    @fate2022 2 роки тому

    so how do you ad something like android using docker, or can you even do that?

  • @zaur66
    @zaur66 3 роки тому +7

    -e is for : Set environment variables , -v is for setting up volumes, you are exposing local 'storage' so to say into the docker container.

  • @HoundDogRock
    @HoundDogRock 5 місяців тому

    Can I use this tutorial for my raspberry pi 2 B v1.1 running dietpi?

  • @golvellius6855
    @golvellius6855 2 роки тому +1

    dude great stuff thank you!

  • @richiegandragon2591
    @richiegandragon2591 14 днів тому

    Nice video, I just used it to repurpose my Pi-3B. Next is Nextcloud so I can dump google. i too had to change the portainer-ce:linux arm to latest. but working now.

  • @manuelprivado
    @manuelprivado 2 роки тому

    Gracias por el video. Segui los pasos y me funciono! Raspberry Pi CM4 8Gb Lite

  • @GilBlumberg
    @GilBlumberg 2 роки тому

    Brilliant, thanks for sharing

  • @pwnograffik
    @pwnograffik 2 роки тому

    thanks, great info!

  • @kellynorton
    @kellynorton Рік тому

    I'm going to go ahead and say that this video was very useful.

  • @SimonYTC
    @SimonYTC 2 роки тому

    Great! Worked perfectly!

  • @joegpapst2129
    @joegpapst2129 Рік тому

    this procedure works on Orange pi zero 2?

  • @mickvanbreukelen7445
    @mickvanbreukelen7445 7 днів тому

    Thanks for this!

  • @awardblvr
    @awardblvr 2 роки тому

    Questions: 1. How do I make sure any container I deploy on Portainer/docker with web access is visible externally (Ie. on my home LAN only, of course, not port-forwarded outside .. just inside my LAN)
    2. How do I set permissions and ownership on various Portainer volumes/directories, etc to allow me to touch those folders from a general Ras Pi login?
    3. What is a "Bind" dir and what are the various modes of "connected networks"? Thanks!!!

  • @weekenddiyprojects5072
    @weekenddiyprojects5072 2 роки тому

    Thanks for sharing !

  • @selvin9845
    @selvin9845 Рік тому

    @SpaceRex thank you very much for creating this type of videos, very helpful. 😎👍 ((SUBSCRIBED))

  • @Ryan-ul8yf
    @Ryan-ul8yf 9 місяців тому

    what is the command to remove the container? I made the same mistake you did in the video and now im stuck..

  • @joshuasimmons571
    @joshuasimmons571 2 роки тому +2

    for anyone who gets the deamon error when trying to pull portainer just reboot your rpi4

    • @JD-sb7mq
      @JD-sb7mq 2 роки тому

      Thanks for sharing! I’m getting this error after trying to install docker “E: Sub-process /usr/bin/dpkg returned an error code (1)” which led to the daemon error “is this daemon running?”

    • @hollowt3a199
      @hollowt3a199 2 роки тому

      What a lifesaver

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

    Thank you for this helpful video! How can I update Portainer?

  • @sbschuppel8552
    @sbschuppel8552 2 роки тому

    Can you install Docker & Portainer on RAspberry pi ' Buster "lite"?

  • @TheDro
    @TheDro Рік тому

    thanks this helped!

  • @igncodmyt6412
    @igncodmyt6412 Рік тому

    Portainer timeout when I enter the ip address and port..

  • @sbschuppel8552
    @sbschuppel8552 2 роки тому

    Watching and looking at the script file. What is :AzureChinaCloud"?

  • @ismailelayachi9337
    @ismailelayachi9337 3 роки тому

    thank you. very interesting.

  • @clauswobbe1
    @clauswobbe1 3 місяці тому

    Hi - great video! I'm new to Docker and Raspberry Pi 5 and I would love to see a video on how to deploy DokuWiki on my Pi5 using Docker.

  • @knoopx
    @knoopx 2 роки тому

    v is for volume not variable, docker.sock is passed to portainer so portainer can manage host's docker via unix sockets.

  • @Ramserik
    @Ramserik 3 роки тому

    Thank you. Great one.

  • @msdosfx
    @msdosfx 3 роки тому

    I have set up Wiregaurd VPN server from your guide and tried unsuccessfully to get nextcloud up and running. I would love to see a tutorial on using Portainer and Docker to set up Nextcloud on Apache or NginX working with Wiregaurd. Would also love to see a tutorial on using Portainer to set up Pleroma instance

  • @helloukw
    @helloukw Рік тому

    For error "docker: Error response from daemon: failed to create endpoint portainer on network bridge: failed to add the host" you just need to run command sudo reboot in order to reset your rPI. After that you can run sudo docker rm portainer and try again the portainer command.

  • @MuhammadHussain-qs5gp
    @MuhammadHussain-qs5gp Рік тому

    Great Video.
    Any video which can guide how to install rasbarryPi on Synology Docker Container ?

  • @Yamheadyan
    @Yamheadyan 2 роки тому +2

    You mentioned at around 2:50 to do a quick glance for any malicious code. Unfortunately as a newbie to coding, I do not know what to look for. Any pointers?

    • @barbyboi
      @barbyboi 2 роки тому

      Generaly is to say, if a code is open source, a company doesnt have spyware in it. Otherwise, i think you just need to learn a bit of coding, or just look a bit of codd in the internet if it seems suspicious.

  • @omarcruz6326
    @omarcruz6326 2 роки тому

    Great Video, Sir.

  • @BrianThomas
    @BrianThomas 2 роки тому

    Great video. Question: How would this work if I have 8 Pi's in a cluster and I want to spin up applications in containers as needed? Will portioner support that?

    • @ArunKumar001
      @ArunKumar001 Рік тому +1

      You should try docker swarm or kubernetes. Portainer is only a gui for docker and docker runs on one host only.

  • @Lithium09
    @Lithium09 8 місяців тому

    pull access denied for pihole, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
    Showing this while trying to pull any image. Not being able to run anything.

  • @tommytigerpants
    @tommytigerpants 2 роки тому +1

    When running the 'sudo docker' command, it returns that 'no matching manifest for linux/arm64/v8 in the manifest list entries' - any advice on this please?

    • @plu2
      @plu2 2 роки тому +1

      sudo docker pull portainer/portainer-ce:latest
      and remember to change it here as well:
      code to install Portainer : sudo docker run -d -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

  • @pedr0_m198
    @pedr0_m198 Рік тому

    worked, thanks

  • @ArunKumar001
    @ArunKumar001 Рік тому

    .sock is a linux socket file in which docker api is exposed. Since portainer requires access to docker you are volume mounting the sock file to the container. Thanks for the tutorial.

  • @joshuathomas512
    @joshuathomas512 2 роки тому

    Some questions, I'm trying to run multiple os's, like ubuntu and retropie through berryboot, and apps, like openmediavault, OpenVPN, pihole, and plex on my pi 4 4gb at once. I tried running all on a single sd card and found some compatibility issues, so I decided to use two cards instead, one for os's and another for programs. Do I go about the latter by first installing docker on rpi os, and then installing said apps into containers? Because I'm also seeing methods of installing docker onto openmediavault for some reason..

    • @SpaceRexWill
      @SpaceRexWill  2 роки тому

      You are going to want to pick one OS per pi. You can install docker stuff on OMV

  • @enderpearl5971
    @enderpearl5971 8 місяців тому

    i've been seeking for remote workstation . thanks alot !

  • @michelghantous9466
    @michelghantous9466 5 місяців тому

    I am new raspberry pi user. with the new version of software it asked for user name. Once I added it I had a difficulties with the tutorial as it asked for pi user and not the one I had. Once I figured that out. It went well. Thanks

  • @danielnagy6809
    @danielnagy6809 2 роки тому +1

    At 7:50 i get a message, “unable to find image portainer/portainer-ce:linux-arm locally.
    Any solution for this?

    • @SRCN999
      @SRCN999 2 роки тому +2

      sudo docker pull portainer/portainer-ce:latest
      sudo docker run -d -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

  • @renobodyrenobody
    @renobodyrenobody 2 роки тому

    Ha thanks for your video, gonna try with the Pi400. Just an idea: I cannot see (I am so ooold) anything on the portainer in web browser part, I suggest you zoom in a bit. Anyway, thanks again!

  • @wisunhi77
    @wisunhi77 3 роки тому

    Great video.

  • @TheMegaLuigi11
    @TheMegaLuigi11 6 місяців тому

    Thank for your video

  • @theuptaker
    @theuptaker 2 роки тому

    One more question. I’ve got this running on my RPI using your video so thank you. Now I’m wondering if these same scripts will work on my Mac using terminal? Want to run an AMD container and seeing that OS X is Linux it might work?

    • @SpaceRexWill
      @SpaceRexWill  2 роки тому

      You should be able to get portioner on your Mac. It will need a different build of portioner but (not ARM)

  • @joshuahaney1135
    @joshuahaney1135 Рік тому

    I literally did everything you said, but until I had to do the raspberry pi.local: 9000 it says this site can’t be reached.

  • @sharonxhazan
    @sharonxhazan Рік тому

    how do i install wordpress on it?

  • @toxicculture4682
    @toxicculture4682 4 місяці тому

    so…how do you remove the container you had us screw up on

  • @kevinhughes9801
    @kevinhughes9801 3 роки тому

    Great vid thanks

  • @robertbeatty4542
    @robertbeatty4542 3 роки тому

    Great video! Do you have any idea why I can't load portainer from another PC? I can only load it from the Pi

    • @SpaceRexWill
      @SpaceRexWill  3 роки тому

      If I had to guess your portainer might be set to local host only

  • @mikk0706
    @mikk0706 2 роки тому +1

    Thank you so much.

  • @MdWahidurRahmanOvi
    @MdWahidurRahmanOvi Рік тому +5

    sudo docker pull portainer/portainer-ce:linux-arm64 (for 64bit rasbian os Debian version: 11 bullseye)

    • @lohnstar5
      @lohnstar5 Рік тому +1

      thank you, just what I was looking for

  • @krstech1269
    @krstech1269 Рік тому

    Thank you, good energy...
    How about a webserver: Apache Tomcat?

  • @philiptalbert458
    @philiptalbert458 2 роки тому

    Would you consider a video on setting up unbound on a raspberry pi?

  • @Farlot911
    @Farlot911 2 роки тому +2

    Please add a annotation or something about having to reboot your Pi if you update/upgrade from the base image straight away, the install will fail without a reboot first :)

  • @chicoleno007
    @chicoleno007 Рік тому

    Great video. New sub to the channel. How about on how to put mqtt and homebridge

  • @vincentnestler1805
    @vincentnestler1805 5 місяців тому

    Thanks!

  • @viperacr99
    @viperacr99 3 роки тому +8

    A tutorial for how to upgrade (or downgrade) containers to newer versions while keeping the existing one available in case the new one doesn't work would be great! If you could do it via synology docker UI that would be cool too.

    • @SpaceRexWill
      @SpaceRexWill  3 роки тому +1

      Thats a good idea! I need to look into that! I think it should be fairly trivial to clone containers

  • @mykec187
    @mykec187 9 місяців тому

    Does anyone know what to do for error 443: connect: network is unreachable?

    • @mykec187
      @mykec187 9 місяців тому

      Never mind had to plug directly into my Verizon internet gateway modern/router So issue is with my Dlink Router

  • @rodrigoultrazone
    @rodrigoultrazone 3 роки тому

    good tutorial

  • @mjeshurun
    @mjeshurun 2 роки тому

    Thank you, SpaceRex , for a great tutorial.
    Can I use the curl command you included to install Docker on Raspberry Pi OS 64bit?
    or should I use a different curl command for the 64bit OS?

    • @sammyjenkin
      @sammyjenkin 2 роки тому +10

      curl command will work for 64bit OS.. but you will need to change the image to docker pull portainer/portainer-ce:alpine

    • @TEKENGLOBAL
      @TEKENGLOBAL 2 роки тому +3

      @@sammyjenkin I wanted to take a few moments to personally thank you for this key information. As how to get 64 bit Portainer installed on the latest 64 bit OS. I must have read and wasted two days just to find this valuable information!
      The fact the official websites don't offer this key information is a: FAIL!
      Thank You!

    • @sammyjenkin
      @sammyjenkin 2 роки тому +2

      @@TEKENGLOBAL No problem, glad to have helped.

  • @44santhoshkumar41
    @44santhoshkumar41 2 роки тому

    thank you

  • @reverend481
    @reverend481 2 роки тому

    Do I have to install ubuntu in my pi? Or can I do this on my pi os?

    • @SpaceRexWill
      @SpaceRexWill  2 роки тому

      You can use this with raspberryPi OS

  • @glenncol
    @glenncol 2 роки тому

    Will this work with Debian with Raspberry Pi Desktop on a NUC

  • @pillowism
    @pillowism 3 роки тому

    Would love a tutorial on port forwarding individual dockers so I can access apps online like say a RSS feed app such as freshRSS, i want to be able to access my news feed from across the globe. Thanks in advance and thank you for this tutorial!!

    • @SpaceRexWill
      @SpaceRexWill  3 роки тому +2

      To do this all you really have to do is setup a DDNS server (have a tutorial on it). This will give you a hostname (read: www.google.com) that points to your homes IP address.
      From there you can just port forward from your router to the pi whatever ports are

  • @karlmee1234
    @karlmee1234 2 роки тому

    i can't get docker to pull portainer, i get an error saying error response from daemon request cancelled while waiting for connection

    • @SpaceRexWill
      @SpaceRexWill  2 роки тому

      Make sure you have internet and DNS

    • @karlmee1234
      @karlmee1234 2 роки тому

      @@SpaceRexWill I found it out it was due to the OS I was using which was twister os. As soon as I flashed a new card with Pi OS, it worked fine which is odd, using the same internet connection and everything

  • @joshuahaney1135
    @joshuahaney1135 Рік тому

    When I do the :9000 and hit enter. It says website cannot be reached.

    • @therealjackfisher
      @therealjackfisher 6 місяців тому

      I hit trouble when launching docker. and wrote it in comment. Looks like he deleted my comment even tho it didnt contain any rant or any thing insulting. He launches portainer and he is already running, while I get some configuration wizard to mess with because the config he did is incomplete, and now im stuck with shitty setup that dont work.

  • @JakobPapirov
    @JakobPapirov 2 роки тому

    Holy shit it's incredibly frustrating to try and follow coding stuff from tutorials. If something isn't working and I want to comment about it. Then youtube delets my comment. can't post links, can't post commands it seams. No explanation is ever given.the comment is just removed; especially fun when I edit a comment so as to provide updated info and I get "returned error".
    Writing the pull portainer pull command resulted in an error where I was asked if docker daemon was running? (will this post?)

  • @ronm6585
    @ronm6585 2 роки тому

    Thanks.