I am unable to learn Docker & Kubernetes yet. It's been 3 years I am working as a backend engineer. 🥺 I don't know why I find it hard to grasp those.

  • 0
    Easy. create an docker image to run random stuff in it.
    Compile tool chain, or A python/NodeJs enviroment.
  • 6
    @magicMirror that's easy.

    Now understanding what actually happens and making wise choices... Another thing.

    Imho most people struggle not with Docket itself, rather the ... Let's say way docker works.

    Docker or OCI is after all just a glorified wrapper to generate a tarball with an entry script. Not nice to put it out like that, given there's a lot more like networking etc. added to it... But in a nutshell, it's really a tarball generator.

    Most people struggle less with Docker itself, more with the... Let's say "arcane and occult vodoo" in between.

    My favorite definitely being environment handling and evaluation / escaping of shell arguments...

    Permissions the next one. Especially in conjunction with OSes like Windows who don't have a concept of unix permissions... Ever fiddled with git update-index under Windows to add chmod permissions so things run well when git repository created in Windows checks out well in a linux docker image... Lots of non fun memories, especially when the windows fanboys explain that this is a Unix problem. Shoving them the Win Page for icacls is very satisfying... Cause icacls / Windows permissions are really the worst. Unix permissions are a simple thing compared to that abomination.....

    So - at least for me - the tarball stuff is easy. Now getting that shit to run and adding environment to it... Eeeeeewwwww.
  • 0
    @IntrusionCM All the jargons mentioned went above my head successfully. Thank you. ☺️
  • 3
    @cypher-clown NP.

    I forgot to take my medications, so I wrote again a nice monologue no one probably understands.

    :) Have a pancake. 🥞
  • 0
    @IntrusionCM Well... yes. And Don't forget how to handle volumes correctly.

    But the poor guy just wants to start somewhere. Let him start with something simple.
  • 1
    As someone who was forced to learn Docker/Kubernetes, I STILL HATE IT. Join the resistence comrade! LET'S BRING BACK SINGLE SERVER NODES 😤
  • 1
    Have you worked with Linux before?
  • 2
    @IntrusionCM I understand your monologue, but I use the tarball generator and k8s for years daily
  • 1
    Try to use docker compose instead of trying to, say, learn all the different syntax for the various "pure" docker commands

    This involves setting up a docker-compose.yml file, with it you can run all your services with a single "docker compose up" command
  • 1
  • 1
    @nururururu Okay, I will give it a shot.
  • 1
    @IntrusionCM yeah love it when linux and windows environments get mixed and the line endings and permissions are bonkers. And then someone uses macos and has hundreds of ._filename ._DS_STORE files in a tarball.
  • 1
    @cypher-clown the most important rule in backends is....

    Break it.

    I mean it.

    Rip the guts out of a system just to find out how far you could go.

    Destroy stuff.

    Poke the forbidden things.

    Do things, especially those things everyone tells you not to do.

    Reason is dead simple. You learn from experience.

    To understand how things work and interact it's usually the easiest way to just start trying to destroy it... Cause then you find out very quickly what the system is made of.

    E.g. in Docker - just start writing stuff for e.g. things you usually wouldn't do in productive systems.

    Wanna find out what happens if you run
    chmod a-x /usr/bin ...?

    Do write a Dockerfile.


    Make it a habit, after having written small things like that just for the fun of it, you'll get used to it.
  • 0
    @cypher-clown OK; some struggle with Docker, because they've never used Linux before. But then that's not the problem.
  • 1
    The main reason why I dislike DevOps is the slow feedback cycle:

    No matter what technology, it's always a mile long YAML which then takes from anywhere between 10 seconds to 10 minutes until "the next" cryptic error message shows up.

    And no matter what hyped solution, it always ends up with shell commands in a freaking YAML.

    All I want is a fast REPL :(
  • 0
    @SuspiciousBug Exactly! With Puppet, it's rather 1-5 minutes for a feedback cycle.
Add Comment