#JDocker
基于 Docker1.12+ (Docker API 1.24+) 开发出的开发包,通过封装 Docker API 使开发者可以快速的使用 Java 开发出控制和操作 Docker 的应用,使用流式操作,简单明了。
完善的测试用例覆盖率达87%。
####JDocker 是 Voovan 开源项目的一个子项目,自然是依赖于 voovan开源项目的。
**交流QQ群:**454201740
![](http://git.oschina.net/uploads/images/2016/0510/122514_7d971a34_116083.jpeg)
[![](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)
[![](https://maven-badges.herokuapp.com/maven-central/org.voovan/JDocker/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.voovan/JDocker)
![JDK 1.8](https://img.shields.io/badge/JDK-1.8-green.svg "JDK 1.8")
[![jar size 196K](https://img.shields.io/badge/size-196K-green.svg "size 196K")](https://git.oschina.net/helyho/Voovan/raw/master/voovan-framework.jar)
------------------------
####重要更新
- 2017-03-16 [1.0-beta-2] Cmd类增加了 Connect 的三个重载函数,现在构造完 Cmd 后需要 connet 来连接 Docker.
- public void connect()
> `DockerGlobal 中配置的默认连接方式`
- public void connect(int timeOut)
> `DockerGlobal 中配置的默认连接方式,指定超时事件`
- public void connect(String host, int port, int timeOut)
> `指定 Docker 主机连接`
- 2017-01-22 [1.0-beta-1] 增加对 Docker Api 1.25 的支持。
- 2016-12-05 完成 Docker Api 1.24 的支持。
-----------------------
####Maven 支持:
```xml
<dependency>
<groupId>org.voovan</groupId>
<artifactId>JDocker</artifactId>
<version>1.5.3</version>
</dependency>
```
------------------------
####对 Voovan 项目的Maven依赖:
```xml
<dependency>
<groupId>org.voovan</groupId>
<artifactId>voovan-framework</artifactId>
<version>1.0</version>
</dependency>
```
------------------------
Voovan 所有 Maven 支持请访问:[Voovan on maven](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.voovan%22)
------------------------
####通过设置`org.voovan.docker.DockerGlobal`中的环境变量来连接至 Docker。
```java
public static String DOCKER_REST_HOST = "127.0.0.1";
public static int DOCKER_REST_PORT = 2735;
public static String DOCKER_REST_CHARSET = "UTF-8";
public static int DOCKER_REST_TIMEOUT = 5;
public static boolean DEBUG = false;
```
------------------------
####使用 JDocker 创建一个容器:
```java
//构造一个创建命令
CmdContainerCreate createCmd = CmdContainerCreate.newInstance("d_test");
createCmd.connect();
//使用流式操作来创建容器
Object data = createCmd.image("alpine").network("bridge")
.volume("v_tx:/v_tx").link("dockerfly:dockerfly")
.cmd("ping","127.0.0.1").env("author=helyho")
.exposePort(22,"tcp","2222").send();
createCmd.close();
Logger.info(formatJSON(data));
```
具体使用请参照 `org.voovan.docker.test.command`测试用例。
------------------------
####如何开启 Docker 的 Remote API?
由于 Docker 默认是使用 unixsock 提供服务,我们可以使用以下两种方式打开端口:
- **通过 socat 将 unixsocket 转换成 TCP 的 Socket 监听**
`socat tcp4-listen:2735,reuseaddr,fork unix-connect:/var/run/docker.sock`
- **开启 Docker TCP 监听端口**
修改 Docker 服务启动参数,添加一个没有被占用的端口号
` # vim /etc/default/docker`
` DOCKER_OPTS='-H 127.0.0.1:2735'`
重启 Docker 服务生效.
**第二种方法我从网上找来,我自己没有实验成功,经过我研究找到了第一种方法,并且一直使用第一种方法,很简单而且有效.**
以上的配置对应`org.voovan.docker.DockerGlobal`中的这两个参数:
```java
public static String DOCKER_REST_HOST = "127.0.0.1";
public static int DOCKER_REST_PORT = 2735;
```
没有合适的资源?快使用搜索试试~ 我知道了~
JDocker 是一个基于 Docker1.12开发出的开发包,通过封装 Docker API zip
共204个文件
java:198个
xml:1个
mf:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 16 浏览量
2024-04-30
06:19:37
上传
评论
收藏 349KB ZIP 举报
温馨提示
docker安装 docker安装方法有多种,下面列举在Windows和Linux系统中的安装步骤:12 Windows系统中的安装方法: 对于Windows Server系统,可以使用Microsoft发布的PowerShell模块DockerMicrosoftProvider来安装。以管理员身份打开Windows PowerShell,运行相关命令安装包并重启计算机即可。 对于Windows 10系统,需要通过创建Docker账户来下载和安装Docker Desktop(Windows版)。在安装过程中,可以将默认容器类型设置为Windows容器,也可以在安装后更改类型。 Linux系统中的安装方法(以CentOS7为例): 更新系统软件包并安装必要的软件包,如yum-utils、device-mapper-persistent-data和lvm2等。 添加Docker的yum仓库,以便下载并安装Docker。可以通过访问Docker官网的CentOS下载地址获取帮助文档,按步骤进行安装。 安装Docker CE(Community Edition)
资源推荐
资源详情
资源评论
收起资源包目录
JDocker 是一个基于 Docker1.12开发出的开发包,通过封装 Docker API zip (204个子文件)
JDocker.jar 193KB
TaskInfoTest.java 19KB
Info.java 11KB
HostConfig.java 10KB
NetworkInfoTest.java 9KB
ImageInfoTest.java 9KB
ContainersUnit.java 9KB
HubImageTest.java 9KB
CmdContainerCreate.java 8KB
ContainerStatsTest.java 7KB
CmdServiceUpdate.java 7KB
ContainerInfoTest.java 7KB
CmdServiceCreate.java 7KB
ContainerStats.java 7KB
InfoTest.java 6KB
ContainerDetial.java 5KB
NetworkSettings.java 5KB
ServiceInfoTest.java 5KB
ContainerCreate.java 4KB
Config.java 4KB
Config.java 4KB
ContainerInfo.java 4KB
ImageDetail.java 4KB
ServiceSpec.java 4KB
DockerHttpClient.java 4KB
ImageHistoryTest.java 3KB
Cmd.java 3KB
CmdContainerList.java 3KB
ImageUtil.java 3KB
NodeInfoTest.java 3KB
NetworkInfo.java 3KB
NetworkUtil.java 3KB
CmdSwarmUpdate.java 3KB
CmdSwarmInit.java 3KB
Network.java 3KB
CmdNetworkCreate.java 3KB
ServiceInfo.java 3KB
NetworkCreate.java 3KB
Container.java 3KB
ExecInfo.java 3KB
ExecUtil.java 2KB
ContainerProcess.java 2KB
NodeInfo.java 2KB
ServiceUtil.java 2KB
ExecCreate.java 2KB
SwarmUtil.java 2KB
ImageListInfo.java 2KB
CmdExecCreate.java 2KB
TaskInfo.java 2KB
VolumeUtil.java 2KB
Swarm.java 2KB
State.java 2KB
CmdImageList.java 2KB
NetworkDetail.java 2KB
NodeUtil.java 2KB
Result.java 2KB
SwarmInfo.java 2KB
VolumeInfo.java 2KB
CmdContainerUpdate.java 2KB
VolumeDetail.java 2KB
CmdNetworkList.java 2KB
CmdTaskList.java 2KB
SwarmInfoTest.java 2KB
CmdDockerFlyConfig.java 2KB
ContainerProcessTest.java 2KB
CmdNodeUpdate.java 2KB
NetStats.java 2KB
CmdContainerAttach.java 2KB
CmdVolumeList.java 2KB
VolumeTest.java 2KB
CmdNodeList.java 2KB
CmdAuth.java 2KB
Raft.java 2KB
CmdNetworkConnect.java 2KB
CmdContainerLogs.java 2KB
ContainerChangeTest.java 2KB
ImageHistory.java 2KB
CmdContainerCommit.java 2KB
CmdHubImageInfo.java 2KB
CmdSwarmJoin.java 2KB
CmdServiceList.java 2KB
HubImageInfo.java 2KB
SwarmJoin.java 2KB
CmdContainerArchivePut.java 2KB
TaskTemplate.java 2KB
Mount.java 2KB
CmdNetworkDisConnect.java 2KB
CmdVolumeCreate.java 2KB
SwarmInit.java 1KB
CmdImageCreate.java 1KB
UpdateConfig.java 1KB
Process.java 1KB
Mount.java 1KB
NodeUpdate.java 1KB
Container.java 1KB
ExecInfoTest.java 1KB
SwarmSpec.java 1KB
Mode.java 1KB
CmdContainerTop.java 1KB
RegistryConfig.java 1KB
共 204 条
- 1
- 2
- 3
资源评论
野生的狒狒
- 粉丝: 2624
- 资源: 2164
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Javascript的影视动画设计源码 - cad
- 基于Java和深度学习的瓦斯浓度预测系统后端设计源码 - 瓦斯浓度预测后端
- Screenshot_20240528_103010.jpg
- 基于Python的新能源承载力计算及界面设计源码 - HAINING-DG
- 基于Java的本科探索学习项目设计源码 - 本科探索
- 基于Javascript和Python的微商城项目设计源码 - MicroMall
- 基于Java的网上订餐系统设计源码 - online ordering system
- 基于Javascript的超级美眉网络资源管理应用模块设计源码
- 基于Typescript和PHP的编程知识储备库设计源码 - study-php
- Screenshot_2024-05-28-11-40-58-177_com.tencent.mm.jpg
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功