Global Edition
REF: 15
Technology

Switched from Docker Desktop to natively running Linux containers without hesitation.

Elegance aside, Docker Desktop's user-friendly facade conceals underlying complexities that can be costly in the long run. Its streamlined interface and effortless setup are perfect for newcomers to containerization. Docker Desktop's relian

Technology — lead image
Lead image — News Trend Today wire

Elegance aside, Docker Desktop's user-friendly facade conceals underlying complexities that can be costly in the long run. Its streamlined interface and effortless setup are perfect for newcomers to containerization.

Docker Desktop's reliance on a hidden Linux virtual machine defeats the purpose of running it on Linux in the first place. Instead of containers operating directly on your system, they're confined within this VM. This added layer not only drains resources but also complicates troubleshooting significantly. The decision to switch to native Linux containers was made with no hesitation, and the results have been overwhelmingly positive since then.

RelatedUS AI models are being considered for access by trusted partners of the G7 leaders.

02Incus offers native containerization capabilities instead of Docker.

Originating from a distinct container heritage.

Docker alternatives often mimic its behavior, but some stand out by retaining its image and command structure. Tools like nerdctl provide a Docker-like interface for containerd, while Rancher Desktop and similar applications simplify local Kubernetes or container runtime environments, making them more accessible to users. These tools primarily operate within the application container realm.

Incus diverges from its predecessors in terms of lineage. Emerging from the LXD-style system container model, Incus is designed to manage comprehensive Linux environments rather than isolated application images. This results in an Incus container that mimics a lightweight virtual machine. Key features include an init system, networking capabilities, storage options, customizable profiles and snapshot functionality. Persistent identity allows for seamless SSH access, package installation, service execution, and treatment as a compact computing entity.

Read nextGigabit internet purchase limited by a faulty switch port, restricting speed to 100Mbps unexpectedly.

For years, I relied on Docker for OCI app images and Incus for system containers and virtual machines. However when Incus began supporting OCI containers, I switched to running the majority of my containers with this new tool.

Originating from a distinct container heritage. image 1
Originating from a distinct container heritage. image 1

Docker alternatives often mimic its behavior, but somestandout by retaining its image and command structure. Tools like nerdctl provide a Docker-like interface for containerd, while Rancher Desktop and similar applications simplify local Kubernetes or container runtime environments, making them more accessible to users. These tools primarily operate within the application container realm.

09Native container support made a difference.

Run native Linux containers with no Docker Desktop.

Incus's compatibility with OCI technology significantly enhances its appeal as a Docker Desktop alternative. The pioneering work of Docker in standardizing workflows has led to a decoupling of the image format and registry ecosystem from the desktop experience itself, which is now largely driven by OCI-style images distributed through registries.

With Incus' OCI capabilities in place, I'm able to directly pull and execute app containers from registries like Docker Hub. This bridging of practical gaps has become more feasible. For persistent environments, I opt for a standard Linux system container, while for packaged services only, an OCI application container is the preferred choice.

The turning point that sealed the deal for me was when my local infrastructure became capable of hosting both types of containers. When an application image is already optimized as a single unit, I opt for OCI containers. Containers like Nginx, Caddy, Redis, and small web applications can run seamlessly as OCI containers. System containers are ideal for development machines, build environments, or service hosts that require a robust setup. Virtual Machines remain a viable option when a separate kernel or enhanced isolation is necessary.

Incus doesn't aim to replicate Docker Compose's functionality exactly, which is why Compose excels at defining complex multi-container setups. Instead, Incus offers a more localized cloud environment with flexibility in choosing instance types - a distinct approach requiring some initial adaptation. However the effort pays off relatively swiftly as users discover its benefits.

Run native Linux containers with no Docker Desktop. image 1
Run native Linux containers with no Docker Desktop. image 1
Run native Linux containers with no Docker Desktop. image 2
Run native Linux containers with no Docker Desktop. image 2
Run native Linux containers with no Docker Desktop. image 3
Run native Linux containers with no Docker Desktop. image 3
Run native Linux containers with no Docker Desktop. image 4
Run native Linux containers with no Docker Desktop. image 4
Run native Linux containers with no Docker Desktop. image 5
Run native Linux containers with no Docker Desktop. image 5

Incus doesn't aim to replicate Docker Compose's functionalityexactly, whichis why Compose excels at defining complex multi-container setups. Instead, Incus offers a more localized cloud environment with flexibility in choosing instance types - a distinct approach requiring some initial adaptation. However the effort pays off relatively swiftly as users discover its benefits.

21Incus's interface emulates a personal cloud environment seamlessly.

Provides transparency without transforming all data into an interface.

Starting my day typically involves managing tasks from the terminal using the Incus command line, which proves to be sufficient for my needs. This approach has been my default for quite some time now.

Upon transitioning to the web UI, I noticed a significant shift in how Incus presents its components. The interface now consolidates various elements such as containers, VMs, networks, storage volumes, profiles, and images into a single viewable space. This allows for effortless monitoring of running resources, inspection of configurations, and access to consoles without requiring manual command execution or mental data correlation. Additionally, GPU pass-through functionality can be initiated with minimal clicks.

Understanding the underlying system is essential, and a web UI can facilitate inspection by providing visibility into its workings, rather than being the primary focus of the architecture itself.

Provides transparency without transforming all data into an interface. image 1
Provides transparency without transforming all data into an interface. image 1
Provides transparency without transforming all data into an interface. image 2
Provides transparency without transforming all data into an interface. image 2

28Workflow efficiency increased significantly now.

Host environment now spotless.

Upon relocating work to Incus, one of my initial observations was a significantly improved host environment cleanliness. The need to install various database versions, language runtimes, message queues, and build dependencies directly on the laptop diminished substantially. Docker had already facilitated this process, yet Incus streamlined long-running development environments even further.

To create a development environment similar to a standard system, one can bypass writing a Dockerfile altogether. Instead, a Debian container is launched, and necessary tools are installed within it. The container's state is then captured as a snapshot for future reference or restoration in case of errors. Additional copies can be generated by cloning the existing image, allowing for easy testing across different distributions.

Infrastructure development and experimentation benefit significantly from this approach. A system container outperforms a single-process Docker container when testing systemd behavior, networking tools, package manager variations or service configurations. The goal is to replicate the behavior of a miniature Linux machine, which is often the focus of articles or experiments. Using Docker in this context feels somewhat incongruous despite its capabilities.

Host environment now spotless. image 1
Host environment now spotless. image 1
Host environment now spotless. image 2
Host environment now spotless. image 2

35Networks become clearer.

Networking remains a potential pitfall for users.

Container networking can be a minefield for users who underestimate its complexity. Docker Desktop obscures many of these intricacies on non-Linux systems, making it harder to grasp the underlying mechanics. On Linux platforms, however, the magic is somewhat redundant, yet old habits persist. Users often struggle with port publication, bridge inspection, and DNS path configuration before finally delving into iptables or nftables rules.

Networking pitfalls are more apparent when using Incus, as its features allow for a more intuitive approach to network management. You can configure bridges, assign instances to networks, and utilize proxy devices in a manner that echoes traditional Linux administration practices. This doesn't eliminate the necessity of understanding networking fundamentals; rather, it simplifies the reasoning process by treating containers as managed entities with defined devices, rather than isolated processes with port mappings.

Networking remains a potential pitfall for users. image 1
Networking remains a potential pitfall for users. image 1
Networking remains a potential pitfall for users. image 2
Networking remains a potential pitfall for users. image 2
Networking remains a potential pitfall for users. image 3
Networking remains a potential pitfall for users. image 3

No intention of reverting now.

My decision to remain with Incus isn't driven by ideology. The logo change doesn't concern me; what matters is a local environment that offers speed, inspectability, scriptability and proximity to Linux. Incus provides the flexibility I need through system containers for small Linux machines and VMs when those aren't sufficient – a combination that's remarkably effective.

For many users, Docker Desktop remains a valuable tool, particularly on macOS and Windows platforms where using a VM is unavoidable. On Linux systems, however, I've come to realize that the added layer of virtualization isn't essential for my daily tasks. Native Linux containers offer a more streamlined approach, which Incus effectively enables without sacrificing complexity.

More Filings

Technology
Technology

US AI models are being considered for access by trusted partners of the G7 leaders.

Technology
Technology

Gigabit internet purchase limited by a faulty switch port, restricting speed to 100Mbps unexpectedly.

Technology
Technology

Avoid using desktop hard drives with your network storage system.