怎样用go语言获取本地IP地址

Python015

怎样用go语言获取本地IP地址,第1张

#include #include #pragma comment(lib,"ws2_32.lib") // 静态库 void findIP(char *ip, int size) { WORD v = MAKEWORD(1, 1)WSADATA wsaDataWSAStartup(v, &wsaData)// 加载套接字库 struct hostent *phostinfo = gethostbyname("")c...

Docker 提供了一个与 Docker 守护进程交互的 API (称为Docker Engine API),我们可以使用官方提供的 Go 语言的 SDK 进行构建和扩展 Docker 应用程序和解决方案。

转自:https://juejin.cn/post/6944730766052065288

整理:地鼠文档 www.topgoer.cn

通过下面的命令就可以安装 SDK 了:

该部分会介绍如何使用 Golang + Docker API 进行管理本地的 Docker。

第一个例子将展示如何运行容器,相当于 docker run docker.io/library/alpine echo "hello world" :

还可以在后台运行容器,相当于docker run -d bfirsh/reticulate-splines :

列出正在运行的容器,就像使用docker ps 一样:

如果是docker ps -a ,我们可以通过修改 types.ContainerListOptions 中的 All 属性达到这个目的:

通过上面的例子,我们可以获取容器的列表,所以在这个案例中,我们可以去停止所有正在运行的容器。

通过指定容器的 ID,我们可以获取对应 ID 的容器的日志:

获取本地所有的镜像,相当于docker image ls 或 docker images :

拉取指定镜像,相当于docker pull alpine :

除了公开的镜像,我们平时还会用到一些私有镜像,可以是DockerHub 上私有镜像,也可以是自托管的镜像仓库,比如 harbor 。这个时候,我们需要提供对应的凭证才可以拉取镜像。

值得注意的是:在使用Docker API 的 Go SDK 时,凭证是以明文的方式进行传输的,所以如果是自建的镜像仓库,请务必使用 HTTPS !

我们可以将一个已有的容器通过commit 保存成一个镜像:

当然,除了可以管理本地的 Docker , 我们同样也可以通过使用 Golang + Docker API 管理远程的 Docker 。

默认Docker 是通过非网络的 Unix 套接字运行的,只能够进行本地通信( /var/run/docker.sock ),是不能够直接远程连接 Docker 的。

我们需要编辑配置文件 /etc/docker/daemon.json ,并修改以下内容(把 192.168.59.3 改成你自己的 IP 地址),然后重启 Docker :

创建client 的时候需要指定远程 Docker 的地址,这样就可以像管理本地 Docker 一样管理远程的 Docker 了:

现在已经有很多可以管理 Docker 的产品,它们便是这样进行实现的,比如: portainer 。

1、使用命令提示符进行查询

第一种方法是使用计算机的命令提示符进行IP地址的查询操作,具体的操作方法是先将计算机联网,无线网络和有线宽带网络都可以,网络连接成功后,返回计算机的桌面,然后在桌面上找到开始菜单,鼠标左键单击开始菜单栏,在开始菜单中的程序搜索栏中输入“CMD”搜索命令提示符,当我们搜索到命令提示符之后,点击运行命令提示符功能,此时以黑色调为主的命令提示符就会打开,在命令提示符中输入命令:ipconfig,然后点击回车键,此时命令提示符窗口中就会显示出IP地址的信息,同时它也会显示出子网掩码和默认网关的地址信息。

2、通过网络连接查询

在计算机联网之后,我们还能够通过查看计算机的网络连接信息来查询IP地址,首先同样要进入计算机的桌面,然后点击开始菜单,在开始菜单中找到“控制面板”功能模块,然后点击进入控制面板,在控制面板中找到关于网络功能的选项,然后进入网络共享中心。在网络共享中心当中,我们找到当前网络连接方式的相关信息,然后直接单击这个网络连接,也可以直接右键点击该网络连接查看属性和状态,在属性和状态的窗口中,有一项就是关于本机的IP地址信息和子网掩码以及默认网关地址的。

3、使用搜素引擎进行查询

查询IP地址的方法还可以通过浏览器搜索引擎的方式进行查询,这里的操作方式也非常简单,首先要打开一个浏览器,在搜索栏中输入IP或者IP地址查询,同时点击搜索,等浏览器的页面发生跳转之后,在搜索结果的第一项中就会看到关于本机的IP地址信息,同时还会显示出当前计算机联网的地址和连接运营商。