1 Star 0 Fork 0

infrastlabs / fk-container-web-tty

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
container.go 1.30 KB
一键复制 编辑 原始数据 按行查看 历史
package container
import (
"context"
"fmt"
"io"
"gitee.com/infrastlabs/fk-container-web-tty/config"
// "gitee.com/infrastlabs/fk-container-web-tty/container/docker"
// "gitee.com/infrastlabs/fk-container-web-tty/container/kube"
"gitee.com/infrastlabs/fk-container-web-tty/container/grpc"
"gitee.com/infrastlabs/fk-container-web-tty/types"
)
// Cli is a docker backend client
type Cli interface {
// GetInfo of a container
GetInfo(ctx context.Context, containerID string) types.Container
// List all containers
List(context.Context) []types.Container
Start(ctx context.Context, containerID string) error
Stop(ctx context.Context, containerID string) error
Restart(ctx context.Context, containerID string) error
// exec into container
Exec(ctx context.Context, container types.Container) (types.TTY, error)
// close the connections
Close() error
// read logs
Logs(ctx context.Context, opts types.LogOptions) (io.ReadCloser, error)
}
// NewCliBackend returns the client backend
func NewCliBackend(conf config.BackendConfig) (cli Cli, err error) {
switch conf.Type {
/* case "docker":
cli, err = docker.NewCli(conf.Docker)
case "kube":
cli, err = kube.NewCli(conf.Kube) */
case "grpc":
cli, err = grpc.NewCli(conf.GRPC)
default:
err = fmt.Errorf("unknown backend type %s", conf.Type)
}
return
}
1
https://gitee.com/infrastlabs/fk-container-web-tty.git
git@gitee.com:infrastlabs/fk-container-web-tty.git
infrastlabs
fk-container-web-tty
fk-container-web-tty
v0.2.6

搜索帮助

53164aa7 5694891 3bd8fe86 5694891