deploy: 3bbb8cd3adb36c9dcbd53f69e0e19322bf920c5b

This commit is contained in:
davegallant
2021-10-12 02:08:17 +00:00
parent ec216d83ec
commit bcaac32ce2
2 changed files with 3 additions and 3 deletions

View File

@@ -154,10 +154,10 @@ personal blog
<p>There are a number of reasons why you might want to replace docker, especially on macOS. One of the more recent controversies with docker has been related to this feature:</p>
<blockquote class=twitter-tweet><p lang=en dir=ltr>...ignoring Docker updates is a paid feature now?? <a href=https://t.co/ZxKW3b9LQM>pic.twitter.com/ZxKW3b9LQM</a></p>&mdash; Brendan Dolan-Gavitt (@moyix) <a href="https://twitter.com/moyix/status/1388586550682861568?ref_src=twsrc%5Etfw">May 1, 2021</a></blockquote>
<script async src=https://platform.twitter.com/widgets.js></script>
<p>Docker has been one of the larger influencers in the container world, helping to standardize the (<a href=https://github.com/opencontainers/image-spec/blob/main/spec.md>OCI Image Format Specification</a>). By easily allowing the necessary dependencies to live alongside the application code, the &ldquo;works on my machine&rdquo; problem is less of a problem.</p>
<p>For many developers, containers have become synonymous with terms like docker, and the <code>Dockerfile</code> being a file that contains the instructions on how to build an image. Docker has certainly made it very convenient to build and run containers, but it is not the only solution for doing so.</p>
<p>Docker has been one of the larger influencers in the container world, helping to standardize the (<a href=https://github.com/opencontainers/image-spec/blob/main/spec.md>OCI Image Format Specification</a>). For many developers, containers have become synonymous with terms like docker, and the <code>Dockerfile</code> being a file that contains the instructions on how to build an image. Docker has certainly made it very convenient to build and run containers, but it is not the only solution for doing so.</p>
<h3 id=what-are-containers>What are containers?</h3>
<p>A container is a standard unit of software that packages up all application dependencies within it. Multiple containers can be run on a host machine all sharing the same kernel as the host. In Linux, namespaces help provide an isolated view of the system: including networking, PIDs, UIDs, and mounts. There is an <a href="https://www.youtube.com/watch?v=sK5i-N34im8">in-depth video</a> that discusses what containers are made from, and <a href="https://youtu.be/sK5i-N34im8?t=2468">near the end</a> there is a demonstration about how to build your own containers on the command line.</p>
<p>By easily allowing the necessary dependencies to live alongside the application code, the &ldquo;works on my machine&rdquo; problem is less of a problem.</p>
<h3 id=benefits-of-podman>Benefits of podman</h3>
<p>One of the most interesting features of podman is that it is daemonless. There isn&rsquo;t a process running on your system managing your containers. In contrast, the docker client is reliant upon the docker daemon (often running as root) to be able to build and run containers.</p>
<p>Podman is rootless by default. It is now possible to <a href=https://docs.docker.com/engine/security/rootless/>run the docker daemon rootless</a> as well, but it&rsquo;s still not the default behaviour.</p>