Crate containerd_shim_client[][src]

Expand description

containerd-shim-client contains TTRPC bindings and client/server code to interact with containerd’s runtime v2 shims.

This crate relies on ttrpc-rust crate to generate protobuf definitions and re-exports the TTRPC client for convenience.

Here is a quick example:

use containerd_shim_client as client;

use client::api;
use client::ttrpc::context::Context;

// Create TTRPC client
let client = client::Client::connect("unix:///socket.sock").unwrap();

// Get task client
let task_client = client::TaskClient::new(client);
let context = Context::default();

// Send request and receive response
let request = api::ConnectRequest::default();
let response = task_client.connect(Context::default(), &request);

Re-exports

pub use protobuf;
pub use ttrpc;
pub use shim::shim_ttrpc::create_task;
pub use shim::shim_ttrpc::Task;
pub use shim::shim_ttrpc::TaskClient;
pub use shim::events_ttrpc::create_events;
pub use shim::events_ttrpc::Events;
pub use shim::events_ttrpc::EventsClient;

Modules

Reexport auto-generated public data structures.

Includes event names shims can publish to containerd. Task event topic typically used in shim implementations.

Structs

TTRPC client reexport for easier access.