使用Docekr-Java远程管理docker.

前些天在小编在自己的VirtualBox安装了Docker,一直是采用dos命令对docker进行操作。于是打算了采用Java程序来管理docker,无奈,在网上找了半天也没有关于这样的贴子,于是自己琢磨的半天,终于是成功了。现在和大家一起分享。目前我是采用的是docker toolbox,下面是链接,后续我将采用VirtualBox虚拟机来链接,原因我会在文章结尾说明。

https://get.daocloud.io/toolbox/

一、环境配置

1、PC机一台,安装VirtualBox虚拟机(我用的是Ubuntu14版本)

2、eclipse开发环境

3、jdk1.8

二、导入依赖

<dependency>
   <groupId>com.github.docker-java</groupId>
   <artifactId>docker-java</artifactId>
   <version>3.0.6</version>

</dependency>

三、编写程序

public static void main(String[] args) {
//使用DockerClientBuilder创建链接
DockerClient dockerClient = DockerClientBuilder.getInstance("tcp://192.168.99.100:2376").build();
//设置Container暴露的端口:如tomcat端口是8080
ExposedPort tcp8080 = ExposedPort.tcp(8080);
//设置映射到主机的端口
Ports portBindings = new Ports();
portBindings.bind(tcp8080, Ports.Binding.bindPort(8089));
//创建一个新的Container并且与主机端口号绑定
CreateContainerResponse container1 = dockerClient.createContainerCmd("tomcat:latest")
.withPortBindings(portBindings).exec();
//运行一个Container

dockerClient.startContainerCmd(container1.getId()).exec();

}

需要注意的问题:

1、虚拟机的防火墙要处于关闭状态,或者允许你想要暴露的端口或者ip为allow(个人建议关闭防火墙)

2、虚拟机的网络链接是桥接或者是host-only模式(采用dockertoolbox使用默认配置就好了)

3、如果拟采用的是VirtualBox虚拟机,那么你需要找到docker运行的端口,docker默认没有与(2376)端口绑定.需要自己绑定。而使用toolbox他自己给你绑定好了端口。可以直接使用。

4、使用ifconfig命令查看主机ip,将IP:port填入创建链接的getInstance中(程序中我已经写明)


以上就可以使用Java程序来远程管理Docker了,docker-java提供了丰富的接口,可以满足对Docker的操作。


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值