Tag: Web爬虫

find每个Docker镜像的图层和图层大小

为了研究的目的,我试图抓取公共Dockerregistry( https://registry.hub.docker.com/ ),并找出1)平均图像有多less层,2)这些层的大小得到分配的想法。 不过,我研究了API和公共库以及github上的细节,但我无法find任何方法来: 检索所有的公共库/图像(即使这些是数千我仍然需要一个起始列表来遍历) find图像的所有图层 find一个层的大小(所以不是一个图像,但个别层)。 任何人都可以帮助我find一种方法来检索这些信息? 谢谢! 编辑:任何人都可以validation在Dockerregistry中search'*'是返回所有的存储库,而不是任何地方提到'*'的任何地方? https://registry.hub.docker.com/search?q=*

从MAMP到Docker的Web开发过渡

我是Docker的新手,我很难将其核心技术应用到我目前的Web开发中。 使用MAMP,你只需要下载应用程序,把你的PHP / HTML文件放在/ htdocs,启动服务器,然后去http:// localhost:8888 /看到你的web应用程序。 现在,使用docker工具,我想知道我怎么能做到这一点。 到目前为止我所做的是从Docker Hub中提取http,php和mysql镜像。 我怎样才能把这三个图像连接在一起,使它们工作? 或者我应该如何同时运行它们? 我应该把/ htdocs放在哪里,或者我怎样才能访问它? MAMP有一个用于数据库访问的phpMyAdmin,Docker有这样的东西吗? 我正在使用boot2docker v1.4.1和VirtualBox 4.3.20在Mac OS X Yosemite(10.10.1)上工作。

使用Docker设置Java开发环境

最近几天我花了很多时间挖掘docker。 我对开发环境的可能性印象深刻,可能与生产环境相同! 目前我想从小处着手,并开始加强发展进程。 我们正在开发部署在tomcat上的Java应用程序。 开发人员正在使用像Eclipse和IntelliJ这样的IDE。 在开发过程中,您可以在IDE中configurationtomcat环境,以便自动部署和debugging代码。 因此,tomcat的基本目录必须可用来设置。 目前我有一个docker debian镜像,在/ opt / tomcat上安装tomcat。 我现在希望能够将container / opt / tomcat目录的内容链接到我的主机中的一个目录。 可悲的是,function似乎并不存在。 使用-v选项,您只能在容器中挂载主机目录,而不能以其他方式挂载。 目前我看到的唯一的解决scheme是挂载容器的webapps目录,并把我的war文件放在这里,这在我看来是非常不利的。 你必须手动启动/重新启动你的tomcat,只有远程debugging是可能的,你的IDE控制台里没有你的日志。 那么,有没有人有任何想法优化使用Docker的Java Web应用程序开发的开发工作stream?

在Amazon Elastic Beanstalk上使用Docker部署Django

我在这里有一个概念性的问题 – 我正在使用Docker(我还没有成功)在Elastic Beanstalk(我已经成功完成)上部署一个Django应用程序。 我知道预构buildDocker的Elastic Beanstalk映像使用了之前部署过Django的Ngnix,但是我在Elastic Beanstalk上完成了这个工作,有点遗憾。 我已经使用Amazon的文档,并使用他们的代码成功地将Dockerfile部署到了弹性beanstalk中,但还没有完成。 有没有人用这个成功? 任何人都可以指出我在正确的方向找出如何完成这个特定的任务? 谢谢

Websocket不附加到docker集装箱

我有一个包含OpenJDK8的Docker容器和一个通过websockets提供服务的webapp。 我有一个testing这些ws服务的Java客户端。 他们在docker以外工作良好。 但是当我把我的web应用程序放入docker镜像并运行webapp时,外部testingjava客户端无法连接。 这是错误: Exception in thread "main" java.lang.RuntimeException: java.io.EOFException: XNIO000812: Connection closed unexpectedly at org.nustaq.kontraktor.remoting.websockets.JSR356ClientConnector$WSClientEndpoint.<init>(JSR356ClientConnector.java:104) at org.nustaq.kontraktor.remoting.websockets.JSR356ClientConnector.connect(JSR356ClientConnector.java:73) at org.nustaq.kontraktor.remoting.base.ActorClient.connect(ActorClient.java:72) at org.nustaq.kontraktor.remoting.websockets.WebSocketConnectable.lambda$connect$36(WebSocketConnectable.java:66) 这是我的Dockerfile: FROM alpine:3.4 RUN apk –update add openjdk8 CMD ["/usr/bin/java", "-version"] # This copies to local fat jar inside the image ADD target/quokka-0.1-SNAPSHOT.jar /quokka-0.1-SNAPSHOT.jar ADD storage/*.mmf /storage/ ADD cwift.properties / # What […]

克隆/快照的Docker容器包括他们的数据的脚本?

我想克隆包含所有数据的dockerized应用程序,在这个例子中使用三个容器:1)一个web应用程序容器,如CMS,2)数据库容器和3)数据卷容器(使用docker卷) 。 使用docker-compose,我可以轻松地创build这些容器的相同实例,只需要初始数据。 但是,如果我想用克隆KVM容器的相似方式克隆同一台服务器上的一组正在运行的容器(包括其所有累积的数据),那又如何呢? 使用KVM,我会暂停或closures虚拟机,克隆一些类似virt-clone的东西,然后启动克隆的guest虚拟机,它具有与原始数据相同的数据。 一个用例是在进行重大更改之前或者在安装新版本的插件之前创build正在运行的开发Web服务器的克隆/快照。 对于Docker来说,这看起来并不那么简单,因为数据不会自动与容器一起复制。 理想情况下,我想做一些像docker-compose clone这样简单的事情,并最终得到与第一组相同的第二组容器,包括所有的数据。 Docker和Docker-compose都不提供克隆命令(从版本1.8开始),因此我需要考虑各种方法,如备份和恢复数据/数据库或使用Flocker等第三方工具。 与此相关的是如何做一个类似于dockerized应用程序的KVM快照的问题,能够轻松地返回到以前的状态。 优选地,克隆,快照和恢复应该是可能的,并具有最小的停机时间。 什么是首选的Docker完成这些事情的方式? 编辑:基于第一个答案,我会让我的问题更具体一点,以便有希望到达编程步骤,以便能够使用bash或python脚本来执行诸如docker-compose-clone和docker-compose-snapshot操作。 克隆docker卷的内容似乎是关键,因为每次我在相同的yaml文件上运行docker-compose时,容器本身都基本被克隆。 通常我的完整克隆脚本将需要 复制包含docker-compose文件的目录 暂时停止集装箱 创build(但不一定运行)第二组容器 确定要复制的数据卷 备份这些数据卷 将数据卷还原到克隆的数据容器中 启动第二组容器 这是否是正确的方式去做,我应该如何执行这个? 我特别不确定如何在脚本中执行步骤4( 确定要复制的数据卷 ),因为命令docker volume ls只能在Docker 1.9中使用。 我怎样才能使用这种方法做类似于KVM快照? (可能使用ZFS中的COW文件系统function,这是我的Docker安装已经使用的function)。