lxd

command
v0.0.0-...-a810e79 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 25, 2021 License: Apache-2.0 Imports: 131 Imported by: 0

Documentation

Overview

forkdns provides a specialised DNS server designed for relaying A and PTR queries.

*

  • This file is a bit funny. The goal here is to use setns() to manipulate
  • files inside the container, so we don't have to reason about the paths to
  • make sure they don't escape (we can simply rely on the kernel for
  • correctness). Unfortunately, you can't setns() to a mount namespace with a
  • multi-threaded program, which every golang binary is. However, by declaring
  • our init as an initializer, we can capture process control before it is
  • transferred to the golang runtime, so we can then setns() as we'd like
  • before golang has a chance to set up any threads. So, we implement two new
  • lxd fork* commands which are captured here, and take a file on the host fs
  • and copy it into the container ns. *
  • An alternative to this would be to move this code into a separate binary,
  • which of course has problems of its own when it comes to packaging (how do
  • we find the binary, what do we do if someone does file push and it is
  • missing, etc.). After some discussion, even though the embedded method is
  • somewhat convoluted, it was preferred.

LXD external REST API

This is the REST API used by all LXD clients. Internal endpoints aren't included in this documentation.

The LXD API is available over both a local unix+http and remote https API. Authentication for local users relies on group membership and access to the unix socket. For remote users, the default authentication method is TLS client certificates with a macaroon based (candid) authentication method also supported.

WARNING: This API documentation is a work in progress. You may find the full documentation in its old format at "doc/rest-api.md".

Version: 1.0
License: Apache-2.0 https://www.apache.org/licenses/LICENSE-2.0
Contact: LXD upstream <lxc-devel@lists.linuxcontainers.org> https://github.com/lxc/lxd

swagger:meta

Source Files

Directories

Path Synopsis
raft
Package raft contains the subset of hashicorp/raft needed to perform data migrations to dqlite 1.0.
Package raft contains the subset of hashicorp/raft needed to perform data migrations to dqlite 1.0.
db
generate/file
Package file contains helpers to write auto-generated Go source files.
Package file contains helpers to write auto-generated Go source files.
query
Package query implements helpers around database/sql to execute various kinds of very common SQL queries.
Package query implements helpers around database/sql to execute various kinds of very common SQL queries.
schema
Package schema offers utilities to create and maintain a database schema.
Package schema offers utilities to create and maintain a database schema.
nictype
Package nictype is a small package to allow resolving NIC "network" key to "nictype" key.
Package nictype is a small package to allow resolving NIC "network" key to "nictype" key.
pci
acl

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL