首页 > 其他分享 >go语言操作docker重启容器

go语言操作docker重启容器

时间:2023-07-19 14:33:11浏览次数:27  
标签:容器 err 重启 client go docker Docker

代码部分

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/docker/docker/api/types/container"
	"github.com/docker/docker/client"
)

func main() {
	// 设置远程Docker守护进程的地址
	remoteDockerURL := "tcp://10.0.0.12:2376" // 将remote-docker-host替换为远程Docker守护进程的IP地址或域名

	// 创建Docker客户端,并指定远程Docker守护进程地址
	cli, err := client.NewClientWithOpts(
		client.WithHost(remoteDockerURL),
		// client.WithVersion("1.41"),
		client.WithAPIVersionNegotiation(),
	)
	if err != nil {
		fmt.Println("创建docker客户端失败:", err)
		os.Exit(1)
	}
	// 要重启的容器ID或名称
	containerIDorName := "nginx111"

	// 重启容器
	err = cli.ContainerRestart(context.Background(), containerIDorName, container.StopOptions{})
	if err != nil {
		fmt.Println("容器重启失败:", err)
		return
	}

	fmt.Println("容器重启成功.")

	// 关闭Docker客户端连接
	defer cli.Close()
}

标签:容器,err,重启,client,go,docker,Docker
From: https://www.cnblogs.com/guangdelw/p/17565484.html

相关文章

  • Django-4.2博客开发教程:需求分析并确定数据表(四)
    前三步已经完成了一个初步流程,从创建项目》应用》数据迁移》访问首页。以下是我整理的基本流程,接下来一步一步完成整个项目。 1.我们的需求: 博客的功能主要分为:网站首页、文章分类、文章内容、图片、文章推荐、文章排行、热门推荐、文章搜索 等~1、网站首页:首页是整个网站......
  • 关于go语言常量的那些事
    相对于变量,常量是恒定不变的值,多用于定义程序运行期间不会改变的那些值。常量的声明和变量声明非常类似,只是把var换成了const,常量在定义的时候必须赋值。const常量名[数据类型]=value项目实战常见场景数据类型可以忽略不写,Golang编译器会⾃动推断出数据类型。在使⽤......
  • Django路由分发
    1.简单的项目不需要路由分发,直接在根路径下的url.py编写即可2.路由分发利用上期学过的在apps文件夹下创建多apphttps://www.cnblogs.com/khalil12138/p/17540805.html  再将路由拆分到各自app的urls.py下 ......
  • 容器环境下访问服务出现 Address not available 报错
    1、现象:访问服务时出现如下报错2、原因:通过netstat-an查看到连接svc的地址,其中estab状态的连接数,已经到达了可用的随机端口数量阈值,无法在新建连接了   执行命令查看:netstat-tan|grepESTABLISHED|wc-l   sysctl-a|grepnet.ipv4.ip_local_port_range3......
  • docker run -itd
    实现“dockerrun-itd”步骤及代码解析1.简介在开始教你如何实现“dockerrun-itd”之前,首先我们需要了解一些相关的背景知识。Docker是一种轻量级的容器化技术,可以快速创建、部署和运行应用程序。通过使用Docker,我们可以将应用程序及其依赖项打包成一个独立的容器,这样就可以......
  • docker run -d --name bitwarden -v /bw-data/:/data/ -p 8800:80 bitwardenrs/se
    DockerRun命令实现Bitwarden容器化引言在现代软件开发和部署中,容器化技术正变得越来越流行。Docker是一个用于构建、发布和运行应用程序的开源平台,它可以将应用程序及其依赖项打包到一个容器中,提供了一种轻便、可移植和可扩展的方式来部署应用程序。在本文中,我们将学习如何使用......
  • docker rm后 映射文件还能找回来吗
    Docker删除容器后如何找回映射文件简介在使用Docker时,我们可能会遇到删除容器后需要找回映射文件的情况。本文将指导您如何通过一系列步骤来实现这一目标。首先,我们先来了解整个流程。流程图下面的流程图展示了整个过程:+-------------------+|开发环境中的文件|+--------......
  • docker redis集群搭建
    DockerRedis集群搭建介绍Redis是一款高性能的键值存储数据库,被广泛用于缓存、队列、计数器等场景。而Docker是一种容器化技术,可以方便地部署、管理应用程序。本篇文章将详细介绍如何使用Docker搭建Redis集群,以提高应用的可靠性和性能。准备工作在开始搭建Redis集群之前,我们需......
  • docker pv pvc是啥
    DockerPVPVC是什么?在讲解DockerPVPVC是什么之前,我们先来了解一下PersistentVolume(PV)和PersistentVolumeClaim(PVC)的概念。PersistentVolume(PV):是Kubernetes中用于表示持久化存储资源的对象,PV是独立于Pod存在的资源,可以在不同的Pod之间共享。PV可以是......
  • docker pull root 密码
    如何实现“dockerpullroot密码”1.流程概述在教会小白如何实现“dockerpullroot密码”之前,我们先来了解一下整个流程。下面的表格展示了实现这个任务的步骤:步骤描述1.安装Docker首先需要安装Docker,确保系统中已经安装好Docker。2.拉取Docker镜像使......