Your submission was sent successfully! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates from Canonical and upcoming events where you can meet our team.Close

Thank you for contacting our team. We will be in touch shortly.Close

  1. Blog
  2. Stéphane Graber

Stéphane Graber

Stéphane Graber

63 posts

Software Engineer

Stéphane Graber is the technical lead for LXD at Canonical Ltd. He is the upstream project leader of LXC and LXD and is deeply involved in the container world. Stéphane has been involved with Ubuntu for years and currently sits on the Ubuntu Technical Board and Ubuntu Developer Membership board. He is a member of the Ubuntu Release team as well as an Ubuntu Archive administrator and Ubuntu Stable Release team member. Outside of his work on containers, Stéphane also has very strong networking knowledge as the former maintainer of the Ubuntu networking stack and large scale system administration knowledge from previous jobs. Stéphane is one of the organizers of the Containers mini-summit during the Linux Plumbers Conference, a regular presenter at LinuxCon and has been involved in many other Ubuntu and container specific events and hackfests.


Stéphane Graber
14 August 2017

LXD: Weekly Status #10

Cloud and server Article

Debconf17 Christian Brauner (@brauner) and Stéphane Graber (@stgraber) were attending Debconf17 in Montreal.We had the opportunity to catch up with colleagues, friends and users. Stéphane gave a talk about LXD and system containers on Debian, a recording is available: http://gemmei.ftp.acc.umu.se/pub/debian-meetings/2017/debconf17/an-intr ...


Stéphane Graber
15 June 2017

Custom user mappings in LXD containers

Cloud and server Article

Introduction As you may know, LXD uses unprivileged containers by default. The difference between an unprivileged container and a privileged one is whether the root user in the container is the “real” root user (uid 0 at the kernel level). The way unprivileged containers are created is by taking a set of normal UIDs and ...


Stéphane Graber
15 June 2017

Custom user mappings in LXD containers

Cloud and server Article

Introduction As you may know, LXD uses unprivileged containers by default. The difference between an unprivileged container and a privileged one is whether the root user in the container is the “real” root user (uid 0 at the kernel level). … Continue reading → ...


Stéphane Graber
29 March 2017

USB hotplug with LXD containers

Cloud and server Article

USB devices in containersIt can be pretty useful to pass USB devices to a container. Be that some measurement equipment in a lab or maybe more commonly, an Android phone or some IoT device that you need to interact with.Similar to what I wrote recently about GPUs, LXD supports passing USB devices into containers. Again, similarly to the G ...


Stéphane Graber
28 March 2017

NVidia CUDA inside a LXD container

Cloud and server Article

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 device and have the container deal … Continue reading → ...


Stéphane Graber
6 March 2017

Run your own LXD demo server

Cloud and server Article

The LXD demo serverThe 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.Rather than use some javascript simulation of LXD and its client tool, we give our visitors a real root shell using a LXD container with nesting ena ...


Stéphane Graber
27 February 2017

LXD client on Windows and macOS

Cloud and server Article

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 that). However since all … Continue reading → ...


Stéphane Graber
27 February 2017

LXD 2.0: Debugging and contributing to LXD [12/12]

Cloud and server Article

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 from the beginning, … Continue reading → ...


Stéphane Graber
27 February 2017

Ubuntu Core in LXD containers

Cloud and server Article

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 packages and all updates are done using transactions. Meaning … Continue reading → ...


Stéphane Graber
22 February 2017

LXD on Debian (using snapd)

Cloud and server Article

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 distribution which has the … Continue reading → ...


Stéphane Graber
20 February 2017

Running Kubernetes inside LXD

Cloud and server Article

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 containerized applications. It groups containers that make up an application into logical … Continue reading → ...


Stéphane Graber
14 February 2017

Network management with LXD (2.3+)

Cloud and server Article

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 an existing physical interface for your containers. … Continue reading → ...