I've never posted a comment on a youtube channel, but you deserved it. After long 8 years (Hours) doing research, you solved my problem in video with 40 minutes. So many thanks.
Just finished your traefik series when I saw you posted this, thank you for answering my subconscious prayer 🙏🏼 Keep up the great work!
@MindMonkeyFTW8 ай бұрын
I can't fathom how easy you made this process, which I have been unable to do with other tutorials. You're doing great work Tim!
@jason-labsАй бұрын
Spectacular video. I appreciate that you have a corroborating document site for the stuff you reference in here, as well. I also appreciate how meticulous you are in the details and troubleshooting. Thanks a ton, Tim.
@TheInfamousToTo8 ай бұрын
compare to the last video of Traefik , i had 0 issue love how you explain things very easy and in simple way 😍
@oildiggerlwd8 ай бұрын
Greatly appreciate the little detail explanations. I’d done the wild card certs before on my home lab, but this is filling in several little knowledge holes in my mind. Excellent content
@chrschra6 ай бұрын
I've also learned way more than I was expecting
@Ellwood4208 ай бұрын
Sweet, I used most of your last Traefik video (never got external access working, but internal worked just fine, and that's all I needed, really)
@vatsalyavigyaverma54948 ай бұрын
Baby, wake up techno tim uploaded about traefik. It's time to update your homelab
@andrewtfluck8 ай бұрын
I felt this so hard 🤣🤣🤣🤣
@osaether3 ай бұрын
I upgrade all dockers once a week or so so Traefik is on v3.1.2 already 🙂
@vatsalyavigyaverma54943 ай бұрын
@@osaether his guide is perfect for learning and deploying
@osaether3 ай бұрын
My point is: I haven't noticed any changes. Do I need to reconfigure anything?
@rx2gamingofficial7 ай бұрын
Thank you so much for the updated tutorial. Not sure if you got my email about the last one not working but this one works now. Tip for anyone with the certs not loading: just force recreate the container and it should load. I think this happens because the first time the certs are getting created but not read, and the second time it can actually read them.
@TheOtherDylanArtsАй бұрын
This video gave me the info I needed to finish my migration to Traefik. Thank you Techno Tim!
@ave46878 ай бұрын
HAHAHA you gotta be kidding me. I spent the 2 last weeks with your previous video and other resources trying to set up Traefik and the rest of my homelab. I literally closed the YT video minutes ago as I was finally able to make everything work. Before going to bed, I decided to check a video from my feed to cool down and what do I see if its not this taunting title XD. Anyway, I'll watch it later as it may allow me to enhance my fresh configuration. Thanks for that 😊
@Breeegz8 ай бұрын
It's a shame that KZbin only allows for me to like this video once. This was a big upgrade from your last "SSL Everywhere" video. Thanks for taking us on your journey.
@SataPataKiouta8 ай бұрын
I am a simple man. I see Techno Tim , I watch , I like.
@bbl_drizzzzy8 ай бұрын
I share
@CrisCheese_8 ай бұрын
I simp
@metallusmelandril73802 ай бұрын
Bro I love you! Over the past weeks I made like three or for attemps to get this running. this vid did it in under an hour
@TechnoTim2 ай бұрын
@@metallusmelandril7380 thank you! Nice work!
@lidbergtech8 ай бұрын
Perfect timing! I've been intersted in Traefik and leaving NPM. Thank you Tim!
@SenorHamburgler8 ай бұрын
Why may I ask? I use NPM and it's so seamless and easy
@lidbergtech7 ай бұрын
@@SenorHamburgler I like to tinker and spin up new things quite often, NPM is great for ease of use. Traefik is just more powerful and diverse, especially with docker, kubernetes and promox. Nothing wrong with NPM, just having the knowledge of how traffic work is good on the cv as well. :)
@BrantScalan2 ай бұрын
Would you consider adding another video to a Traefik series where you integration Authentik with Traefik ? I know you did a video about Authelia sometime back but it would great to see an update with Authentik and an outpost with Traefik. Also I love this video especially from the self hosted side and not having to have private records in an external DNS. But is your Traefik container reachable from the outside or do we just need Let's encrypt to find a valid domain for DNS auth and then it will issue the wildcard cert to the traefik container. Love you content
@espressomatic5 ай бұрын
This might be the definitive guide for Traefik 3
@panthonyy3 ай бұрын
I rarely watch 40 mins long videos thru the end. Awesome vidéo tutorial! Been searching a bit online how to do this. Can't wait to set that up :)
@TechnoTim3 ай бұрын
Awesome, thank you! That's a huge compliment!
@panthonyy3 ай бұрын
I'm a web dev and let's say that I watch, read and write a whole lot of tutorials/documents. The quality level of your tutorials is up there man, I learn more than what you teach from your videos. You do deserve the compliment.
@redsoldier1233 ай бұрын
Took me a while to figure out but, note to self: using .yaml extension will break things.... switched it back to yml and it worked just like the video. Great tutorial!
@carstenr.16828 ай бұрын
Great video, Tim! Proxmox has its own ACME integration, so I personally prefer that way (because traefik is running as a VM on my Proxmox, so I want to prevent a race condition when the VM is down, Proxmox is not available through Traefik But for anything else - Traefik is great
@xDrShadowx8 ай бұрын
I had the same thought about Proxmox. Any TLS termination with the right certificates should be made directly on Proxmox anyway. If you want to be agressive, this should be the same for most services as well (internal certificates with local CA between internal containers to reverse proxy // letsencrypt certificates on the reverse proxy to the rest of the world)
@ManelRodero8 ай бұрын
@@xDrShadowxcan you explain a little more this solution for Proxmox? If It uses its own ACME for talking to Let's Encrypt, then we need to create its CNAME on CF instead of Pihole. Right?
@MrIanPreston4 ай бұрын
Appreciate the update. Another great video that explains what is needed to be done, how to do it and why it has to be done. Your videos are so much more than simple 'follow me' instructions and really do help to provide some understanding. Thank you.
@johnny4ever58 ай бұрын
**knows he can create/edit file in one step but prefers two steps** Bravo good sir! So satisfying...
@romayojr8 ай бұрын
this is perfect timing i just rewatched your old traefik video yesterday cuz i’m having some weird connection issues with my traefik server that i setup last year that has been working great for me. i might re-spin up my server with traefik 3 this weekend to see if resolves my issues. thanks tim!
@replicant_20497 ай бұрын
One of the best tutorials I've followed on youtube, perfect pacing and everything worked first time. Thank you!
@BladeWDR8 ай бұрын
Very comprehensive Tim, well done.
@MrakCZ8 ай бұрын
Anonymous window in browser is always the good way for testing changes.
@GeorgeAlexanderTrebek2 ай бұрын
Also firefox containers work too.
@mitchelbone63018 ай бұрын
Thank you. I've been meaning to do this in my homelab for some time. Now I have everything I need.
@Crusaderzpl8 ай бұрын
Thanks Tim! finally managed to get Traefik fully working in my homelab, great tutorial as always
@solsats7 ай бұрын
Had to say this... It's got to be absolutely one the best well rounded , well thought, in depth traefik install walk-throughd I have come accross thus far,.., thanks and well done Tim..
@damiexxi31632 ай бұрын
Please need help...how do I add multiple entries to the config.yml you speak about 35:07 can someone please provide the layout?
@rickdavidson88957 ай бұрын
Fantastic video. Love the section on verifying things were working.
@michaelgleason47916 ай бұрын
30:00 you can just do > filename to blank out a filename from the terminal.
@nemac235 ай бұрын
36:47 The "secured" middleware chain doesn't seem to be applied to any of the routers. Assuming this is an editing mistake?
@apmellott7 ай бұрын
Another great tutorial, Techno Tim. I even got this to run on my Docker Swarm (once I had the correct DNS name).
@EglemborАй бұрын
@TechnoTim any chance of a video explaining how you configure cloudfare to point your local dns running in pi-hole?
@chrisumali98418 ай бұрын
Thanks for the demo and info, once again super helpful documentation. Have a great day Techno Tim
@wojtek-334 ай бұрын
Thanks for this. Real easy to follow and worked on my first attempt. I am testing this as a replacement to Nginx Proxy Manager. No nice text based config, but NPM is 100x easier and faster to setup and add sites. Good to have a back up though!
@marinuspretorius82305 ай бұрын
I followed this tutorial but I just keep on getting TRAEFIK DEFAULT CERT. I have everything the same except pihole. I use adguard and I have configure my domains in there. It resolve but does not get the lets encrypt cert
@Synoap3 ай бұрын
yes the same here, but Im using pi-hole. Anyone else? @TechnoTim can help us?
@WakeUpGeorge3 ай бұрын
@@Synoap Yeah me too, did you find a fix?
@singh.karanbir6 ай бұрын
loved the whole idea of this, brilliant stuff Tim!
@pieter74168 ай бұрын
Interesting tutorial! I think it'll really help some people in setting Traefik up, which at first use, can be a bit daunting. However, Traefik now officially supports HTTP3, so I think you should open both ports 443 tcp as well as udp in your compose file. Make sure to update your firewall settings / port forwards as well. - 80:80 - 443:443/tcp - 443:443/udp Also, one of the strengths of Traefik is that after adding the "config" volume once, you shouldn't have to run "docker compose up" when changing config.yaml. Lastly, I personally like to also use logs, so choose to add this volume as well: "- /opt/traefik/logs:/logs:rw" and try to name compose files "compose.yml", as it saves a few keystrokes.
@TechnoTim8 ай бұрын
Thanks for the great tips! I will also add this to the docs!
@denix08 ай бұрын
Thanks for this, very informative! At 11:07 you say "we need to create a docker network called proxy", but I couldn't see where it's done... Anything special about it? Which driver does it use?
@TechnoTim8 ай бұрын
It’s in there!
@denix08 ай бұрын
@@TechnoTim ah, 19:24 - it was so short, just "docker network create proxy", so I totally missed it... Thank you!
@Chefmoensch7 ай бұрын
Everything worked and now I have TLS on all my connections to my services. Thank you Tim
@alexjohansson3288 ай бұрын
Minor opportunity at 12:22- I always get bogged down setting permissions for family samba shares, docker user, etc. Take a minute to talk through the chmod operation
@Lord-Kanzler3 ай бұрын
how does this video have only 3.4k views? I watched it like 6 times start to finish alone.
@nezu_cc8 ай бұрын
Have been running this setup for ages and can recommend it. you can add a star cname in your DNS server so you don't have to add entries every time
@CyberSecRookie25 күн бұрын
Great content man, thanks a lot for your all hard work and efforts, much appreciated
@philbudgen50903 ай бұрын
Great informative, educational video. This video helped me so much to get traefik working. Very detailed vid and additional documentation provided. Keep up the great work. Many thanks.
@jerealityjr7 ай бұрын
Great Video, any plans for a video on how to securely expose to the internet?
@1gold47 ай бұрын
I am finally tackling the project of my homelab again and I am so grateful to see a new video for Traefik. These types of videos are such a huge help.
@PopularWebz4 ай бұрын
A few notes: You are using both cli config and YAML config on the Traefik container. Move that all into the YAML file. Also you shouldn't be specifying your email for cloudflare, you should be using a scoped taken instead. Also at this point you should be enabling strictSNI and a minimum TLS version of 1.2
@EderValois5 ай бұрын
thx mate, im from Brazil and u saved my life! Great content, keep doing this job ur awesome! Again, thx a lot!!
@fferdianlim6 ай бұрын
Thanks Tim! this video really helpful as I was looking for your previous video to troubleshoot certificate error I encountered since last week, then manage to replace with this setup 👍
@Oakey76uk2 ай бұрын
Finally a video that shows you how to set up traefik successfully. Just one question that i dont think you covered. I have to servers both running docker. How do i run only one instance of traefik for both.
@hbhamilton36 ай бұрын
I did all this over yesterday and today but with some help from Dockge. This was an awesome tutorial!
@tazmattar8 ай бұрын
This was fantastic! I was literally looking at how to do this the other day and you've come up trumps yet again. Thank you 😊
@TechnoTim8 ай бұрын
Glad I could help!
@Skyverb5 ай бұрын
Everything went well for me until around the 27 minute mark. I followed along well until there; keep getting can't connect to that domain error. Double and triple checked the steps like crazy. Dunno what I'm doing wrong.
@nuke3dll2 ай бұрын
Excellent easy to follow tutorial , many thanks
@incacube2 ай бұрын
great video, trouble shooting parts also helped very much!
@JailbreakNation8 ай бұрын
Just moved and am now motivated to unpack the homelab 😎
@ra1n_Ай бұрын
Hey, This is super interesting and your acknowledgement and sort of rant about the docker secret feature, Awesome ! I have a question though: Say you are using tailscale currently, which doesn't support subdomains ? The 2 level subdomain thingy that you did, using cloudflare. Would that even work ? Could I use a WireGuard server that I deploy on DigitalOcean
@mathurin_hv6 ай бұрын
Really helpful ! Thank you ! Could you make a video to explain how to convert that configuration to a docker swarm ?
@scottmielke40717 ай бұрын
Do you use traefik for externally accessible services? How do you typically separate those? Different docker hosts? How do you do the networking since you don't need to modify the internal DNS?
@Genesis89347 ай бұрын
12:16 traefik defaults to yml, but can be overridden with a command line option. --configFile
@RadTechDad3 ай бұрын
This is great and all.... but only for internal services. If you want to have a public-facing service, you can't do a second-level wildcard cert going through cloudflare without paying for a cert from them.
@rzvendramini7 ай бұрын
Great video! But afer watching it, I applied the ideas to configure Caddy. Traefik is excellent, but the configuration file is a bit complex and lengthy.
@dorvinion8 ай бұрын
Thanks for the local only explanation. Every one of these I've seen before expects you to want to directly expose things externally. Yes I want to access from outside, but only after I've connected to WG/OVPN One question, can this be done without the local subdomain? Would you just need to remove the . local subdomain from the examples provided?
@shawn22964 ай бұрын
sigh why why i will probably add 200k views i love that you did i will buy a new cluster set up again man i learned a sh!t ton from your videos and even landed a network gig cuz of how much i dabbled thanks alot
@meetthesandvich2114 ай бұрын
I had to remove the basic auth and .env because the traefik container would not move past the login prompt for the dashboard even though I put the user name and password in correctly, but I would love to see video on how to get the dashboard working with Authentik. 👍
@samubolvivat95042 ай бұрын
how you remove the basic auth ? I am also cannot login the dashboard either. my password generator is correct in .env file. please help..
@wat7842Ай бұрын
same problem. i go into container and echo the credentials they show but i cant login. gonna have to lookup removing auth
@Glitch_8608 ай бұрын
anotther great tutorial. you mention difference in Docker Swarm. I am running a docker swarm in my homelab so would love to be pointed to documentation for that config. Also can I setup 2 certs in Traefik?
@nippurtech5725 ай бұрын
Bro.... This tutorial was AMAZING!
@tomaszpankowski89035 ай бұрын
Thank you! I wouldn't be able to configure it without this tutorial.
@afnieves7 ай бұрын
Thank you for your great content. I am trying to get Traefik and Cloudflare running in Proxmox LXC helper scripts. The chalenge I am haveing is getting the cloudflare api token running in the LXC because enviroment variables are a bit different than in docker secrets. Would you consider doing a video on getting this setup and running?
@snopz23 күн бұрын
This is awesome! You managed to explain Traefik so clearly in just one video-amazing work! I do have a quick question: How can I access my services from outside my home network? I understand that I need to expose only port 443 on my router, but the issue is that the setup uses the local DNS server to resolve the domains to Traefik. Because of this, it doesn’t work outside my network. Thanks a ton for your hard work and for making Traefik so much easier to understand!
@TechnoTim23 күн бұрын
@@snopz thank you! you need to set up external DNS to point to your IP and then port forward to traefik.
@snopz22 күн бұрын
@@TechnoTimI set up an AAAA record in Cloudflare DNS pointing to my public IPv6 address since my router only allows port forwarding over IPv6, not IPv4. Honestly, it's better this way-no need for dynamic DNS since I can assign a static IPv6 address that’s unlikely to change.
@sonalita_8 ай бұрын
will there be a similar update for the Kubernetes version?
@CyrrelSneer7 ай бұрын
Why don't you let out the pihole part and create the DNS records within cloudflare?
@michaelgleason47915 ай бұрын
Because he's doing this locally? He's only using cloudflare for the DNS challenge. He was pretty clear about that.
@chits23916 ай бұрын
Hi Tim! Great tutorial! I've followed the steps and wondering if you could give some insights as to why I can't open the traefik dashboard after setting local dns using pihole. I can get pings from the url, and when I use curl, it says Moved Permanently. Hoping you could see this. Thanks Tim!
@Invaderjason1236 ай бұрын
I'm confused with all the .local references. If you have a domain name and Cloudflare, why wouldn't you just put a wildcard CNAME on your Cloudflare DNS settings? This is the the part that confused me so much doing the records on pi-hole.
@michaelgleason47915 ай бұрын
Well, because he's doing this for LOCAL services only, not ones exposed to the Internet.
@MKBUHDD4 ай бұрын
If you are familiar with cloudflare, could you please tell me: - Can I buy a domain from any provider and register it (transfer) it for cloudflare and manage it as if i bought it from them? so I can use their tunnel service and other features? - Do you think cloudflare tunnel is better than reverse proxy to expose your home server to public?
@BerliOfficial4 ай бұрын
@@MKBUHDD I only can answer your first question. You can buy a domain nearly anywhere, you just have to set the nameserver in your dns settings (where your domain is) to the cloudflare nameservers shown in your account. After that you have the full experience of dns settings at cloudflare as far as I know.
@MKBUHDD4 ай бұрын
@@BerliOfficial Thanks for the info, then I will look for a cheap domain. 👍🏻
@BreetaiZentradi7 ай бұрын
I would love to see a video covering the pros and cons of Traefik 3 vs caddy-proxy-manager vs nginx proxy manager. I thought Caddy was going to be the bees knees so I went that route for my homeserver. Pros: the label sections in the docker-compose.yml is self contained and no need for open ports on the host, and you can use any caddy directives you want. Cons: You have to have the the docker-compose.yml files have a default external network. For work I have had to use nginx proxy manager (npm). Pros: All done in a gui, all the configs are centralized in npm. It is easy to setup certs for containers available on the local network by using a duckdns with an IP set to your private netowork and you do not have to have an external network setup. Cons: You have to have open ports to all the services on the host.
@meteailesi7 ай бұрын
Failed one more time :) , I can't understand what I am missing. Thank you for your efforts Tim :)
@stevendonaldson12166 ай бұрын
I've been through these YT follow-along errors. It's literally the main job of network engineers to solve the problems you're going to run into. Time to strap in, find the problem or just restart from clean install. Both work out in the end.
@Michael-v3v2u2 ай бұрын
The only thing I do not understand is how to get certs on multiple external apps. What would the config.yml look like for 2 or 3 services, not just proxmox?
@TudorRusu898 ай бұрын
Just neat and on point! Congrats! Been following your videos for a while. A couple of questions: 1. How about exposing multiple ports on Traefik? 2. How about exposing multiple external services? 3. Can you do a more deep insight tutorial about internal DNS setup? All the best!
@2001CamaroSS20708 ай бұрын
Yes to #2! I was able to add Unifi local access, but can't add Home Assistant or other local services that don't run on HTTPS by default.
@drbyte20098 ай бұрын
Tim, you make super great video's, in one word PERFECT!!
@tykers.8 ай бұрын
Any reason to use this over nginx proxy manager?
@surgical_178 ай бұрын
Great setup to locally access it, but what if I wanted to access some of these services remotely aswell. Can I use and modify the same setup or do I need to make an entire different setup?
@jenswymeersch96532 ай бұрын
Great video. Just wondering, I would like to add zabbix to the mix here. Would I need to adjust the config.yml file ? If so, please advise
@sidneyking11Ай бұрын
I am not able to get a certificate to other devices. I have added the config.yml. Where can I go to get help on this?
@_CoderX_2 ай бұрын
Awesome video. Now how can I migrate this to a swarm environment with a public gateway node and the rest, master and workers, behind it?
@xneakersvault15568 ай бұрын
Any recommendations to troubleshoot when the cert is from traefik and not from let's encrypt.
@zer0r00t8 ай бұрын
I don't think the DNS part tells the CA to check those specific DNS servers. That would be a huge security risk. It simply tells traefik to use those DNS to verify that the TXT records are indeed visible globally before saying the CA to proceed with the next step (ACME protocol). What public DNS the CA queries from is not publicly documented
@lyth1um2 ай бұрын
dashboard: debug:true doenst do anything?? am i missing something or is the traefik documention not up2date?
@Neo1984312 ай бұрын
I am having issues with generating a certificate for the domains there is an acme erorr presenting the cloudflare token. I also went through all the troubleshooting steps everything checks out any ideas?
@nightmarenova67488 ай бұрын
Whats the biggest new thing here, compared to v2? How bad of an idea would it be to just upgrade? At first glance i haven't noticed that at least the important settings changed that much
@turfgaming21492 ай бұрын
Great video thanks for the files as well. What if I do not want to use an internal DNS resolver, but use cloudflare can I do that also? As I do not mind using the internal urls to get to my services.
@Ben.A.R17 сағат бұрын
Any idea how to setup with OPNsense router that already has ACME running on it? I also have a domain with cloudflare so how does that work? TIA -Ben
@HelloHelloXD8 ай бұрын
Should we you docker compose instead of docker-compose? The version at the beginning would be unnecesary then
@nospamas89268 ай бұрын
The version at the start of the docker-compose.yaml designates the spec you're using. This does matter, some properties may behave differently or not exist in older versions, I've run into this particularly with swarm related properties.
@HelloHelloXD8 ай бұрын
@@nospamas8926 when I updated my system I had to install docker compose instead of docker-compose as I was getting errors. After I installed docker compose I got errors 'version is obsolete' so I removed it from all of my docker-compose.yamls
@justinth838 ай бұрын
@@nospamas8926 On the newer versions of Docker Compose (2.25+) the version line has been deprecated and will generate a warning if it exists.
@danko95bgd8 ай бұрын
Because swarm is the only thing that does not respect the compose spec. And yes, the version should not be used anymore@@nospamas8926
@kangy11038 ай бұрын
Hi, first off, thank you so much for this tutorial. Nice and easy to follow! That said I am having an issue I hope you can help with. I'm using a wildcard A record for my addresses through cloudflare and I'm not using PiHole at all. When I try to configure Traefik for workloads outside of docker using your template with my own information I get "Internal Server Error" when trying to load the webpage. Is this because i'm not using PiHole? If so, what do I need to change to fix the error?
@lachlanvanderdrift70136 ай бұрын
I have this same issue. Did you ever find a solution?
@Ziegenhändler3 ай бұрын
@@lachlanvanderdrift7013 same here
@gravewalker3493Ай бұрын
hi, thank you for the video! I did everything as shown. I have no errors / logs, all variables are correctly showing up in debug mode. My issue is I cant access traefik dashboard. it says 404 page not found when I do it via the domain that I gave, even when I try to access the dashboard using local ip address of my proxmox docker lxc container with port 80, 443 or 8080. I can't seem to resolve it, can you please suggest what should I do? I even changed traefik image from 3.0 to latest. I am out of options to try by searching online.
@sirpiffington39097 ай бұрын
Your hash at 20:41 has double $'s from your sed but the password you use at 25:05 has single $'s
@markdickey78072 ай бұрын
i followed to a tee.... i get the certificates with no problem (in the test mode) - but i can't access the traefik dashboard. I keep getting 404 page not found. I get it if i add :80 or :443. I have both ports exposed on by router
@RocketLR8 ай бұрын
Uugh my traefik is causing so much problems when i try to deploy my react app.. so many different header settings that cause weird behavior with no freaking error output 😵