HOWTO: Automatically import your public SSH keys into LXD Instances
Dustin Kirkland
on 25 February 2017
Tags: cloud-init , containers , LXD
Just another reason why LXD is so awesome…
You can easily configure your own cloud-init configuration into your LXD instance profile.
In my case, I want cloud-init to automatically ssh-import-id kirkland, to fetch my keys from Launchpad. Alternatively, I could use gh:dustinkirkland to fetch my keys from Github.
Here’s how!
First, edit your default LXD profile (or any other, for that matter):
$ lxc profile edit default
Then, add the config snippet, like this:
config:
user.vendor-data: |
#cloud-config
users:
- name: root
ssh-import-id: gh:dustinkirkland
shell: /bin/bash
description: Default LXD profile
devices:
eth0:
name: eth0
nictype: bridged
parent: lxdbr0
type: nic
name: default
Save and quit in your interactive editor, and then launch a new instance:
$ lxc launch ubuntu:x
Creating amazed-manatee
Starting amazed-manatee
Find your instance’s IP address:
$ lxc list
+----------------+---------+----------------------+----------------------------------------------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+----------------+---------+----------------------+----------------------------------------------+------------+-----------+
| amazed-manatee | RUNNING | 10.163.22.135 (eth0) | fdce:be5e:b787:f7d2:216:3eff:fe1c:773 (eth0) | PERSISTENT | 0 |
+----------------+---------+----------------------+----------------------------------------------+------------+-----------+
And now SSH in!
$ ssh [email protected]
$ ssh -6 ubuntu@fdce:be5e:b787:f7d2:216:3eff:fe1c:773
Enjoy!
:-Dustin
Ubuntu cloud
Ubuntu offers all the training, software infrastructure, tools, services and support you need for your public and private clouds.
Newsletter signup
Related posts
Implementing an Android™ based cloud game streaming service with Anbox Cloud
Since the outset, Anbox Cloud was developed with a variety of use cases for running Android at scale. Cloud gaming, more specifically for casual games as...
Containerization vs. Virtualization : understand the differences
Containerization vs. Virtualization : understand the differences and benefits of each approach, as well as connections to cloud computing.
Meet Canonical at KubeCon + CloudNativeCon North America 2024
We are ready to connect with the pioneers of open-source innovation! Canonical, the force behind Ubuntu, is returning as a gold sponsor at KubeCon +...