docker-client

摘要:
=nil{//panic(err)//}///////for _,container:=rangecontainers{//fmt.Printf(“%s%s”,container.ID[:10],container.Image)//}}

通过docker-client 调docker API, 根据需求进行调用

package main

import (
    "context"
    "fmt"

    "github.com/docker/docker/api/types"
    "github.com/docker/docker/client"
    "github.com/docker/go-connections/nat"
    "github.com/docker/docker/api/types/container"
)


func main() {
    cli, err := client.NewEnvClient()
    if err != nil {
        panic(err)
    }



    body,err:=cli.ContainerCreate(context.TODO(),&container.Config{
        Tty: true,
        OpenStdin:true,
        Image:"nginx:latest",
    },&container.HostConfig{
        PortBindings:nat.PortMap{nat.Port("80/tcp"):[]nat.PortBinding{{"0.0.0.0","10001"}}},
    },nil,nil,"testnginx2")

    if err!=nil{
        fmt.Println(err)
    }
    fmt.Println(body)
    containerID:=body.ID

    err=cli.ContainerStart(context.TODO() ,containerID, types.ContainerStartOptions{})
    fmt.Println(err)



    //containers, err := cli.ContainerList(context.Background(), types.ContainerListOptions{})
    //if err != nil {
    //    panic(err)
    //}
    //
    //
    //for _, container := range containers {
    //    fmt.Printf("%s %s
", container.ID[:10], container.Image)
    //}
}

免责声明:文章转载自《docker-client》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Linux下使用popen()执行shell命令【转】pycharm远程上传文件到Linux下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

docker实例之mysql的使用

docker实例之mysql的使用 常用步骤 命令 1:搜索镜像 docker search xxx 2:拉取镜像 docker pull xxx:yy 3:查看镜像 docker image inspect xxx:yy 4:运行容器 docker run xxx:yy 5:停止容器 docker container stop...

EdgeX 1.2研究-2 读取Modbus协议设备

1、使用的基于下面这个链接的示例: https://docs.edgexfoundry.org/1.2/examples/Ch-ExamplesAddingModbusDevice/ 这个示例没有跑通,主要卡在这里的讲解配置文件和下载的版本对应不上,经过两天的摸索,使用如下方式实现 2、使用下面compose文件安装 # /***************...

再谈容器与虚拟机的那点事

容器技术起源于虚拟化技术的发展,欣欣向荣的 Docker 着实是容器技术潮流中的一朵十分耀眼的浪花。在 Docker 诞生之初,它常常被放在虚拟机技术的对立面,甚至还有过 Docker 将替代虚拟机的夸大宣传,在许多集群以及虚拟化方案设计的讨论中,也总会将两者拿来比较一番利弊。 现如今 Docker 已经比较普及,这些曾经的传言不攻而破。容器以及 Dock...

Docker容器利用weave实现跨主机互联

Docker容器利用weave实现跨主机互联 环境: 实现目的:实现主机A中容器1与主机B中容器1的网络互联 主机A步骤: ①下载复制weave二进制执行文件(需要internet)[root@192 ~]#git clone https://github.com/weaveworks... #如没有git,yum install git[root@19...

基于kuboard管理k8s

前言 昨天我们分享了本地springboot项目构建docker镜像的内容,详细介绍了springboot项目打包、镜像构建、基于docker启动运行的全过程,这个技术虽然不是特别难,但是很实用,因为镜像构建完成后,我们不仅可以让我们的服务在docker中运行,也可以让它在k8s中运行,今天我们就来看下如何通过kuboard在k8s上部署我们的服务。 今天...

Django项目的docker镜像制作

最近搞了个django项目,在各个环境部署时总会遇到问题,于是便想到了docker部署,接下来记录一下一下docker镜像制作部署的流程。 基础镜像:镜像中运行的项目或者启动的一些服务,都要在一个基础镜像之上才能运行这些服务,比如一个django项目或者mysql数据库等,都要在Linux操作系统之上来运行,所以打包我们自己的项目时,必须要有个基础镜像来当...