LXD 2.0: Introduction to LXD
This is the first blog post in this series about LXD 2.0. A few common questions about LXD What’s LXD? At its simplest, LXD is a daemon which provides a REST API to drive LXC containers. Its main goal...
View ArticleLXD 2.0: Installing and configuring LXD [2/12]
This is the second blog post in this series about LXD 2.0. Where to get LXD and how to install it There are many ways to get the latest and greatest LXD. We recommend you use LXD with the latest LXC...
View ArticleLXD 2.0: Your first LXD container [3/12]
This is the third blog post in this series about LXD 2.0. As there are a lot of commands involved with managing LXD containers, this post is rather long. If you’d instead prefer a quick step-by-step...
View ArticleLXD 2.0: Resource control [4/12]
This is the fourth blog post in this series about LXD 2.0. Available resource limits LXD offers a variety of resource limits. Some of those are tied to the container itself, like memory quotas, CPU...
View ArticleLXD 2.0: Image management [5/12]
This is the fifth blog post in this series about LXD 2.0. Container images If you’ve used LXC before, you probably remember those LXC “templates”, basically shell scripts that spit out a container...
View ArticleLXD 2.0: Remote hosts and container migration [6/12]
This is the sixth blog post in this series about LXD 2.0. Remote protocols LXD 2.0 supports two protocols: LXD 1.0 API: That’s the REST API used between the clients and a LXD daemon as well as between...
View ArticleLXD 2.0: Docker in LXD [7/12]
This is the seventh blog post in this series about LXD 2.0. Why run Docker inside LXD As I briefly covered in the first post of this series, LXD’s focus is system containers. That is, we run a full...
View ArticleLXD 2.0: LXD in LXD [8/12]
This is the eighth blog post in this series about LXD 2.0. Introduction In the previous post I covered how to run Docker inside LXD which is a good way to get access to the portfolio of application...
View ArticleDirectly interacting with the LXD API
The next post in the LXD series is currently blocked on a pending kernel fix, so I figured I’d do an out of series post on how to use the LXD API directly. Setting up the LXD daemon The LXD REST API...
View ArticleLXD 2.0: Live migration [9/12]
This is the ninth blog post in this series about LXD 2.0. Introduction One of the very exciting feature of LXD 2.0, albeit experimental, is the support for container checkpoint and restore. Simply put,...
View ArticleLXD 2.0: LXD and Juju [10/12]
This is the tenth blog post in this series about LXD 2.0. Introduction Juju is Canonical’s service modeling and deployment tool. It supports a very wide range of cloud providers to make it easy for you...
View ArticleLXD 2.0: LXD and OpenStack [11/12]
This is the eleventh blog post in this series about LXD 2.0. Introduction First of all, sorry for the delay. It took quite a long time before I finally managed to get all of this going. My first...
View ArticleNetwork management with LXD (2.3+)
Introduction When LXD 2.0 shipped with Ubuntu 16.04, LXD networking was pretty simple. You could either use that “lxdbr0” bridge that “lxd init” would have you configure, provide your own or just use...
View ArticleRunning Kubernetes inside LXD
Introduction For those who haven’t heard of Kubernetes before, it’s defined by the upstream project as: Kubernetes is an open-source system for automating deployment, scaling, and management of...
View ArticleLXD on Debian (using snapd)
Introduction So far all my blog posts about LXD have been assuming an Ubuntu host with LXD installed from packages, as a snap or from source. But LXD is perfectly happy to run on any Linux...
View ArticleUbuntu Core in LXD containers
What’s Ubuntu Core? Ubuntu Core is a version of Ubuntu that’s fully transactional and entirely based on snap packages. Most of the system is read-only. All installed applications come from snap...
View ArticleLXD 2.0: Debugging and contributing to LXD [12/12]
This is the twelfth and last blog post in this series about LXD 2.0. Introduction This is finally it! The last blog post in this series of 12 that started almost a year ago. If you followed the series...
View ArticleLXD client on Windows and MacOS
LXD on other operating systems? While LXD and especially its API have been designed in a mostly OS-agnostic way, the only OS supported for the daemon right now is Linux (and a rather recent Linux at...
View ArticleRun your own LXD demo server
The LXD demo server The LXD demo server is the service behind https://linuxcontainers.org/lxd/try-it. We use it to showcase LXD by leading visitors through an interactive tour of LXD’s features....
View ArticleNVidia CUDA inside a LXD container
GPU inside a container LXD supports GPU passthrough but this is implemented in a very different way than what you would expect from a virtual machine. With containers, rather than passing a raw PCI...
View Article