3 ms·
Sorry but you're wrong. A vast majority of software ships after it has been built as a stand alone application as well as a Docker container so that it can be r
by tedk-42 6y ago
Sorry but you're wrong. A vast majority of software ships after it has been built as a stand alone application as well as a Docker container so that it can be run in container environments.
A lot of CI systems natively support Docker because of the variety of tools and images you have available to run you CI steps in.
Docker is an excellent distribution tool because it only requires Docker.
You can send someone some python code and ask them to run it, only to find they're missing a bunch of C libs required to build and run the code which is a pain to help them figure out how to solve.
Docker solves many of these problems but has a drawback of being more 'bloated' than other distribution mechanisms. It doesn't make it a bad one though.
- ogre_codes 6y ago> You can send someone some python code and ask them to run it, only to find they're missing a bunch of C libs required to build and run the code which is a pain to help them figure out how to solve. You can send someone a Docker file only to figure out they've never heard of Docker. Let alone don't have it installed and aren't interested in setting up a container system to your 500 line Docker script. All you've done is move your problem upstream. Unless your consumer is a web developer, you are out of luck.
- tedk-42 6y agoThe learning curve for docker is minimal. As I mentioned before it's very useful in CI systems where you want to be building and testing your code in a clean environment that is reproducible across machines. Trying to debug when a core library or header dependency is missing to build your code requires far more skills and differ between operating systems and versions of operating systems. The problem isn't moved upstream, it's tackled in a very clever and well packaged manner.