我有兴趣支持开发人员使用docker作为其本地工作流程的一部分。其中大部分都在Windows和OSX上,并且将使用 Boot2Docker 来运行docker。
图像源与项目源代码一起位于主机上。
没有办法(没有弄乱 Boot2Docker 图像添加访客添加或运行samba容器)将主机目录共享到 Boot2Docker VM中,所以我想要使用远程API获得相同的效果。
即。 dev在主机上构建maven项目,这会导致创建.war工件。
在主机上创建Dockerfile以构建可以部署该.war工件的映像。
我想要一个命令行工具,我可以在主机上运行,让我可以针对 Dockerfile 和相关文件调用build image命令,这样我就可以在 Boot2Docker VM。
有多种库可以与docker remote api通信,但是我找不到可以直接从主机命令行运行的工具。
我正在考虑将自己的命令行界面编写到 docker-java 库,但想知道我是否有可以使用的现有工具?
答案 0 :(得分:1)
我认为您错过了boot2docker不仅提供了VM,还提供了可以连接到它的docker
二进制文件(请参阅Boot2Docker文档for OSX和for Windows上的运行Docker部分
docker
cli(在所有平台上)只与docker守护进程通信。默认设置是通过本地unix套接字进行通信,这被认为更安全,但boot2docker配置为侦听VM上的TCP套接字,该套接字已预先配置为可从主机访问。
当启动最近的boot2docker版本时(至少在OSX上),您将获得此消息,其中包含您需要的唯一配置:
$ boot2docker up
2014/07/05 18:23:01 Waiting for VM to be started...
2014/07/05 18:23:02 Started.
2014/07/05 18:23:02 To connect the Docker client to the Docker daemon, please set:
2014/07/05 18:23:02 export DOCKER_HOST=tcp://192.168.59.103:2375
如果我理解这个问题,这就是你需要的全部,并且都是由docker和boot2docker提供的。