Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "docker networking"
-
Are you using socat?
Any interesting use case you would like to share?
I am using it to create fake / proxy docker containers for network testing.7 -
I hate Docker. I hate networking with Docker. I hate Hyper-V.
I've spent over a month dealing with problem after problem after problem.
Someone put me out of my misery.10 -
that moment when you have to learn Docker at work, so you convince networks teacher to do that in classes.2
-
About slightly more than a year ago I started volunteering at the local general students committee. They desperately searched for someone playing the role of both political head of division as well as the system administrator, for around half a year before I took the job.
When I started the data center was mostly abandoned with most of the computational power and resources just laying around unused. They already ran some kvm-hosts with around 6 virtual machines, including a cloud service, internally used shared storage, a user directory and also 10 workstations and a WiFi-Network. Everything except one virtual machine ran on GNU/Linux-systems and was built on open source technology. The administration was done through shared passwords, bash-scripts and instructions in an extensive MediaWiki instance.
My introduction into this whole eco-system was basically this:
"Ever did something with linux before? Here you have the logins - have fun. Oh, and please don't break stuff. Thank you!"
Since I had only managed a small personal server before and learned stuff about networking, it-sec and administration only from courses in university I quickly shaped a small team eager to build great things which would bring in the knowledge necessary to create something awesome. We had a lot of fun diving into modern technologies, discussing the future of this infrastructure and simply try out and fail hard while implementing those ideas.
Today, a year and a half later, we look at around 40 virtual machines spiced with a lot of magic. We host several internal and external services like cloud, chat, ticket-system, websites, blog, notepad, DNS, DHCP, VPN, firewall, confluence, freifunk (free network mesh), ubuntu mirror etc. Everything is managed through a central puppet-configuration infrastructure. Changes in configuration are deployed in minutes across all servers. We utilize docker for application deployment and gitlab for code management. We provide incremental, distributed backups, a central database and a distributed network across the campus. We created a desktop workstation environment based on Ubuntu Server for deployment on bare-metal machines through the foreman project. Almost everything free and open source.
The whole system now is easily configurable, allows updating, maintenance and deployment of old and new services. We reached our main goal for this year which was the creation of a documented environment which is maintainable by one administrator.
Although we did this in our free-time without any payment it was a great year with a lot of experience which pays off now. -
You can connect to Docker containers directly via IP in Linux, but not on Mac/Windows (no implementation for the docker0 bridged network adapter).
You can map ports locally, but if you have the same service running, it needs different ports. Furthermore if you run your tests in a container on Jenkins, and you let it launch other containers, it has to connect via IP address because it can't get access to exposed host ports. Also you can't run concurrent tests if you expose host ports.
My boss wanted me to change the tests so it maps the host port and changes from connecting to the IP to localhost if a certain environment variable was present. That's a horrible idea. Tests should be tests and not run differently on different environments. There's no point in having tests otherwise!
Finally found a solution where someone made a container that routed traffic to docker containers via a set of tun adapters and openvpn. It's kinda sad Docker hasn't implemented this natively for Mac/Windows yet.4 -
Last year I switched to a dedicated server with several IPv4 and IPv6 addresses. Getting Docker to direct traffic (both ingress/egress) to specific IP addresses is way more difficult than it should be. I wrote a tutorial for anyone else who's interested:
https://battlepenguin.com/tech/... -
Okay I give up. I just don't get this docker networking stuff. I need someone to save me these sleepless nights and get on a call with me. A docker expert please. I am dying and my make believe devops engineer persona is crashing on me.15
-
Having a shit of a time trying to figure out why Docker containers are not accessing other containers via domain names as they should technically be going through the jwilder nginx proxy container.
Why can't environment setups ever be simple? -
Monday marks the beginning of a new month. In the new month, I turn a year older. As I steer further and further away from "youthfulness", I intend on starting a new chapter in my life.
Sunday 28th Feb is the last day I put any investment towards my "white-collar" professional career. Beginning March 1st, all my energy is going towards my entrepreneurial career instead.
This means that instead of learning that Huawei HCIA networking certification that I hate, I'm going to continue learning Docker (then Kubernetes) which I intend to use on my first product & the many more to come. Instead of studying the horrifyingly boring Data Science course, I'm instead going to put my energy behind understanding GCP & AWS, with the hopes of eventually getting certified.
Basically, I'm going to put all my energy into learning technologies that interest me AND have the potential to help me deliver on my entrepreneurial journey faster & better, rather than studying certifications which everyone believe will make me more employable.
Unfortunately, there aren't that many jobs going around & I'm currently under a year long internship with extremely smart graduates (a valedictorian included). The joke is we're earning $250 a month and have zero hope of getting employed anytime soon. I'm tired of going down this path.
I'm glad I got my degree in CS, now onto creating job opportunities for my fellow peers!
PS: Expect rants about my entrepreneurship challenges, and celebrations about my entrepreneurship wins!2 -
I finally got Docker to fully work...my final problem was a missing } in the nginx.conf and I needed someone else to find it, I stg i'm the worst at networking2
-
Making a hard switch to ubuntu on my desktop at home. Getting just a teeny tiny, tad, bit: absolutely fucking livid....
Trying to learn ansible, vagrant, and docker more in depth for both work and my personal projects. All that I’ve been doing is just spinning my wheels trying to figure out the stupid fuck-mothering quirks with running this shit on Windows. Yes you absolutely can use all of these tools on a Windows box. There’s plenty of ports, patches, and workarounds. But I have spent all day trying to build a few vagrant boxes and use ansible to set them up. Simple LAMP stack boxes on CentOS7. Nothing major... unfortunately I spent like 90-110 minutes trying to figure out why virtualbox wouldn’t run properly. Dumbass me forgot that I installed Hyper-V ages ago.
O...K.... whelp... hyperv provider it is...
Luckily it only took about 15 minutes to determine that Hyperv’s networking can’t be setup from vagrant because vagrant doesn’t know how to interact with the hyperv - vswitch. So networking config is ignored and all VMs run on default switch (NAT) which is annoying but workable.
Ran into other issues trying to stay SSH’ed into the VM. PowerShell core (6) ssh’es into the box perfectly fine, but every time I opened vi to edit configs my terminal color scheme and fonts got fucked harder than a 2 dollar hooker on nickel night.
I’m a bright-green text on black background kinda guy. However the terminal kept changing to bright-red text on white background! It was like getting skull-fucked by a minotaur.
After a while I said fuck it, let’s try putty. Vagrant was using it’s own ssh keypair for the boxes, at work on my mac. Works like a dream. Putty failed me hard and shit the bed, kept getting all kinds of keypair errors. At this point I was finished spent too long trying to make shit work correctly on this jankbox. With enough time and patience I probably could’ve figured all of these problems out. I’m certain that at least 70% of them were caused by user error. I’m known by many as the walking ID-10t.
But alas, I have no time left in the day to fuck around with shit that doesn’t work immediately for morons like myself. My only hang up for the longest time with a complete switch to Linux was gaming. But with Proton and WINE I’m comfortable with giving it the ol’ college try. (Shhhh, don’t remind me I dropped out of college...
...Thrice.)
The gamble here is that I’ll give more than 2 halves of a fuck about trying to get my games working. A Study environment and materials for certs and general training won’t be getting anywhere near my full attention.
So, at long last, I hope this attempt at a full *nix switch finally sticks!!!
👾2 -
Hey Arch people! Wanna help a newbie get started? I'm very comfortable with sysadmin and are currently using Ubuntu with XMonad for DE.
I'd like to 'build' my own, super minimal system. It should preferably have gtk theming with XMonad as de. I've been looking at suckless and are currently wonder what I actually need to prepare/know in order for networking, VSCode(or learn vim), QT and docker to run on the system. It has a Nvidia graphics card and I'd like to use it for ML too.
Dont worry, I'm also going through the Arch page and are looking for answers to my questions & thoughts.. I just know I haven't thought of everything yet, probably not even all the basics.
Oh and please roast me for my ignorance, as long as you tell me something useful 😝6 -
I’m 20 years old MERN (Mongodb, Express.js, React.js, Node.js) Stack Developer, Working in a start up as a full time employee. They’re paying me 20k (INR) (< $300)/month. I’m in 2nd year of my college for my Bachelor’s Degree in computer Science. My Job is work from home. I’m doing programming for 4 years now. I have 1 year full time experience and extra 6 months internship in the same company and also doing freelance for 1 year. I’ve worked on many technologies like AWS, Azure, GCP, React, Tailwindcss, Flutter, Node.js, Express.js, Docker, Vercel, Linux and keep learning things cause I love doing this. But I think my salary is too low, I work 6 days/ week. They promised me that they’ll increase my salary but I don’t think they will. I think there is a lot I can achieve but nothing I can see right now. I’m not comparing myself to anyone but I think I’m eligible to get good food and good Education cause I’m paying for everything (College, food, etc). Family is not supporting after I started earning. I’ve basic understanding of DSA, Networking, etc. Pls Guide me, Please like what to do.. should I leave my job, if I do then I’ve to serve 45 days of notice period.. They said they’ll raise some amount from this new year. So should I wait to get the offer letter then should I quit.. and even after I quit then where should I apply? Should I apply abroad or Bengaluru? Should I take IELTS Certificate or any other tech certifications? Please Help, PLEASE PLEASE PLEASE🙏🙏🙏4
-
Learn more about networking, revisit computer science fundamentals, memorise agile frameworks, practice DDD properly, learn about basic property and conveyancing law for my new job, get through 1 tech book every 2 weeks, revisit Linux as it's been a long time, learn the basics of developing and deploying with azure, learn terraform and docker, finally finish building my own product that has been going for 3 years now, continue learning about mobile development and build a mobile app for my new product.
Should be fine xD5 -
I have been working on a long time, low progress project of mine that keeps on giving and giving.
Let's begin like two years ago where I dipped my toes into "more then gigabit" networking thanks to a Linus Techtips video about infiniband.
I had the dream of booting my Workstation from my NAS, a so called diskless setup.
Well, since I run FreeNAS on my Nas , a very nice Freebsd based Nas OS, everything's gonna be good.
In the beginning, there was no infiniband support.
Turns out, you don't need it, since the mellanox CX2 nics can do ETH too.
Yay.
Just took me a few weeks of anger.
So, to be able to boot something over the network, you need firmware that finds the bookable stuff and loads it.
That protocol and firmware is called PXE.
PXE needs a DHCP telling it what to do, and what is where and etc.
Freenas here I come! Installing dnsmasq on the actual freenas install turned out to be not that great of an idea because freenas thinks of itself as being an "appliance" that you don't fiddle with. So things work, until you update/ upgrade when everything will basically be wiped, except what you have done through the ui.
Ok. So I gona use a jail, a container like thing for that.
Everything is great, jail has internet, everything Installs fine, what could go wrong?
Dnsmasq can launch and work, but not as dhcp server. Some thing about permissions.
Turns out, jails have permission like things.
A few days of head scratching later, it has ALL the permissions.
Dnsmasq still can't work as DHCP server though, why you ask?
Because it needs a specific kernelmodule that isn't contained in the jail. Since jails are kind of like a docker container, they run on the same OS kernel, who does not have this module, I'd need to patch the freenas, which is an appliance, so fuck that.
Like a year later, freenas has finally added good VM support, so why not make a VM for the dhcpserver?
Well, about a year ago, I didn't know that the virtual Intel nic is a fucken unstable piece of garbage, crashing nearly any OS at some point.
So that was it for a while again.
Now to the last few weeks.
Finally dnsmasq is running in a freebsd VM with a good and working configuration which is rather simple, if those tutorial fuckers out there would explain shit instead of just telling you to copy, paste and replace X.
Now back to the PXE side.
I'm using iPXE because I have no clue how to boot anything over tftp so iSCSi it is, since that is what I can relate too.
The idea behind iscsi is to fake a SCSI disk over the network. Attached devices appear as if they are actually directly connected to the machine instead of over the network.
iPXE gets a lease from the server, can connect to it, everything is fucken great. Finally.
Except that if it "sanBoots" the iscsi drive, it can't find anything to boot.
Well fuck.
If I attach a Linux live USB over iscsi, it boots, finds grub, and crashes because the live iso isn't configured for network-boot.
But it boots.
So what's so different?
Well iPXE is booted in legacy mode, where as the content of the target is windows 10 in efi mode.
Ffff.
Ok. Can I get iPXE to boot in EFI mode?
Well yes, after like 3 days fiddling with it.
But it only finds the onboard Intel nic instead of the new Mellanox CX3 cards, and can't even connect to the target....
Sooo, I guess my options are as follows.
Either, get PXE efi to work on the network cards directly, its called flexboot and might be able to since I just found some firmware options for that.
Or give up on efi and install windows in legacy mode.
Which isn't that easy when it has to end up on a drive on my nas.