mirror of
https://github.com/psviderski/uncloud.git
synced 2026-08-26 11:03:34 +00:00
83 lines
2.1 KiB
Protocol Buffer
83 lines
2.1 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package api;
|
|
|
|
option go_package = "github.com/psviderski/uncloud/internal/machine/api/pb";
|
|
|
|
import "google/protobuf/empty.proto";
|
|
import "internal/machine/api/pb/common.proto";
|
|
|
|
service Docker {
|
|
rpc CreateContainer(CreateContainerRequest) returns (CreateContainerResponse);
|
|
rpc InspectContainer(InspectContainerRequest) returns (InspectContainerResponse);
|
|
rpc StartContainer(StartContainerRequest) returns (google.protobuf.Empty);
|
|
rpc ListContainers(ListContainersRequest) returns (ListContainersResponse);
|
|
rpc RemoveContainer(RemoveContainerRequest) returns (google.protobuf.Empty);
|
|
rpc PullImage(PullImageRequest) returns (stream JSONMessage);
|
|
}
|
|
|
|
message CreateContainerRequest {
|
|
// JSON serialized container.Config.
|
|
bytes config = 1;
|
|
// JSON serialized container.HostConfig.
|
|
bytes host_config = 2;
|
|
// JSON serialized network.NetworkingConfig.
|
|
bytes network_config = 3;
|
|
// JSON serialized ocispec.Platform.
|
|
bytes platform = 4;
|
|
string name = 5;
|
|
}
|
|
|
|
message CreateContainerResponse {
|
|
// JSON serialized container.CreateResponse.
|
|
bytes response = 1;
|
|
}
|
|
|
|
message InspectContainerRequest {
|
|
string id = 1;
|
|
}
|
|
|
|
message InspectContainerResponse {
|
|
// JSON serialized container.InspectResponse.
|
|
bytes response = 1;
|
|
}
|
|
|
|
message StartContainerRequest {
|
|
string id = 1;
|
|
// JSON serialized container.StartOptions.
|
|
bytes options = 2;
|
|
}
|
|
|
|
message ListContainersRequest {
|
|
// JSON serialized container.ListOptions.
|
|
bytes options = 1;
|
|
}
|
|
|
|
// ListContainersResponse structure allows broadcasting ListContainers requests to multiple machines.
|
|
message ListContainersResponse {
|
|
repeated MachineContainers messages = 1;
|
|
}
|
|
|
|
message MachineContainers {
|
|
Metadata metadata = 1;
|
|
// JSON serialized []container.Summary.
|
|
bytes containers = 2;
|
|
}
|
|
|
|
message RemoveContainerRequest {
|
|
string id = 1;
|
|
// JSON serialized container.RemoveOptions.
|
|
bytes options = 2;
|
|
}
|
|
|
|
message PullImageRequest {
|
|
string image = 1;
|
|
// JSON serialized image.PullOptions.
|
|
bytes options = 2;
|
|
}
|
|
|
|
message JSONMessage {
|
|
// JSON serialized jsonmessage.JSONMessage.
|
|
bytes message = 1;
|
|
}
|