在启动时使用静态数据进行Docker集成testing

我一直在这个问题上挣扎了一会儿。 我想用一组特定的数据做一个性能testing。 为了实现这一点,我使用Docker-compose,并导出了几个.sql文件。 当我第一次使用docker-compose build和docker-compose up构build并运行容器时, docker-compose up数据集是好的。 然后我运行我的testing(也插入)数据。 运行我的testing后,我想再次执行它,所以我重新启动容器使用docker-compose up 。 但这一次,由于某种原因,我不明白,上次插入的数据(通过我的testing)仍然存在。 我现在得到不同的行为。 目前我有以下Dockerfile: FROM mysql:5.7 ENV MYSQL_DATABASE dev_munisense1\ MYSQL_ROOT_PASSWORD pass EXPOSE 3306 ADD docker/data/ /docker-entrypoint-initdb.d/ 因为我读过mysql Docker镜像运行/docker-entrypoint-initdb.d/所有/docker-entrypoint-initdb.d/ 。 第一次正常工作。 我也尝试了这些post的build议: 如何在Docker容器中迁移mysql数据目录? http://txt.fliglio.com/2013/11/creating-a-mysql-docker-container/ 如何在构build时创build已填充的MySQL Docker镜像 如何使用填充数据库进行自动化testing的docker图像? 和几个相同的其他职位。 他们目前似乎没有工作。 每次启动容器时,如何确保数据集完全相同? 而不必每次重build图像(这需要很长的时间,因为一个大的数据集)。 提前致谢 编辑: 我也试着用不同的参数来运行容器,比如: docker-compose up –force-recreate –build mysql但是这没有成功。 容器重build并重新启动,但数据库仍受我的testing影响。 目前解决我的问题的唯一办法是删除整个容器和图像。

如何在Java中find非堆空间内存泄漏?

我们有一个使用eclipse-jetty版本8.1.6的java webserver。 最近我们开始注意到内存不足的错误。 我们对活动的线程数目没有分析。 这在100左右似乎是合理的。该进程有5GB的最大堆内存和4GB的初始堆内存。 Process Details Environment: Docker(kubernetes) java.version="1.8.0_91" java.vm.info="mixed mode" java.vm.name="Java HotSpot(TM) 64-Bit Server VM" thread size = 1024K ulimit is unlimited for max process per user. Container(Pod) Max memory is allocated to be 8GB networking服务器平均每分钟接收350个请求。 我们还在ELB(kubernetes服务)之后运行了许多这样的实例。 运行几个小时后,我们注意到这个OOM。 这个问题是随机的,它发生在压力testing。 OOM StackTrace: java.lang.OutOfMemoryError: unable to create new native thread at java.lang.Thread.start0(Native Method) [na:1.8.0_91] at […]

docker – 卡拉夫图像与蒙戈图像

我从头开始创build了karaf dockerfile,并且可以与我的应用程序一起工作。 现在,postgreSQL和MongoDB容器需要在最后一步与karaf容器在同一个networking上运行。 从本质上讲,我到目前为止是三个独立的dockerfiles。 而我需要的是他们能够相互沟通。 我如何解决这个问题?

泊坞窗在斯卡拉使用docker容器的图像错误

我收到以下错误 [2017-03-07 15:46:00 UTC][environment:dev-b-6a8b4ad] No Docker image specified in either Dockerfile or Dockerrun.aws.json. Abort deployment. /var/lib/gems/2.3.0/gems/eb_deployer-0.6.6/lib/eb_deployer/eb_environment.rb:135:in `block in with_polling_events': Elasticbeanstalk instance provision failed (maybe a problem with your .ebextension files). The original message: [Instance: i-0b1228876f73ca7a9,i-0e959009aaaa54638,i-07aff1e0aca24a51f] Command failed on instance. Return code: 1 Output: No Docker image specified in either Dockerfile or Dockerrun.aws.json. Abort deployment. (RuntimeError) […]

执行进程的Docker用户不能被删除

我有一些特定的用户使用的资源,我不得不删除,因为它从服务器获取大量的资源。 当我列出服务器中的进程时,被删除的用户现在显示为“1001”,而不是我在删除之前显示的名称。 %Cpu(s): 19.8 us, 29.5 sy, 0.0 ni, 50.7 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st KiB Mem : 3882456 total, 183568 free, 2003808 used, 1695080 buff/cache KiB Swap: 1679356 total, 1155300 free, 524056 used. 1463480 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 9192 1001 […]

Dotnet核心Docker应用挂在Synology版本上

我有一个用dotnet核心编写的REST API,我之前在Linux VM(Ubuntu)上构build了Docker镜像。 build立的形象,我能够推动没有太多的问题。 但是,当我在Synology盒子上运行它时,它会抛出下面引用CLI更改的错误。 Project app (.NETCoreApp,Version=v1.0) will be compiled because the version or bitness of the CLI changed since the last build 我以为我只要telnet进入Synology盒子,在那里build立图像。 不幸的是,它每当它试图运行dotnetfunction时都会挂起。 下面是Dockerfile和docker内置的日志。 Dockerfile: FROM microsoft/dotnet:1.0.0-preview2-sdk WORKDIR /app COPY project.json . RUN dotnet restore EXPOSE RANDOM_PORT_NUMBER COPY . . RUN dotnet publish -c Release RUN chmod +x /app/bin/Release/netcoreapp1.0/publish RUN cd /app/bin/Release/netcoreapp1.0/publish […]

什么是云端链接?

我正在做dockerfile,并安装火花有两个链接,我可以使用。 A. http://d3kbcqa49mib13.cloudfront.net/spark-2.1.0-bin-hadoop2.7.tgz B. https://www.apache.org/dist/spark/spark-2.1.0/spark-2.1.0-bin-hadoop2.7.tgz 我认为'B'是官方的链接,但我抬头的大多数docker文件都是'A'。 'B'链接是永久性的? 他们有什么不同?

sh和bash之间的区别

在编写shell程序时,我们经常使用/bin/sh和/bin/bash 。 我通常使用bash ,但我不知道它们之间有什么区别。 bash和sh之间的主要区别是什么? 在bash和sh编程时我们需要注意什么?

jenkins在没有sudo的slave节点中执行shell docker

我使用jenkins和奴隶节点(SSH连接)。 我想执行shell。 docker ps 这是错误的 Cannot connect to the Docker daemon. Is the docker daemon running on this host? 所以这个从节点在exec命令后连接到ssh(jenkins connect user = ssh连接用户) docker ps 正常运行… SSH连接和jenkins奴隶节点(SSH连接)不同? 为什么?? jenkins错误? 帮我…

使用链接/端口转发从另一个容器访问应用程序

请build议如何从另一个容器启动容器的服务。 详情在这里: Docker HOST1运行2个容器:CONT1和CONT2。 CONT1基于ubuntu和apache。 它已经得到IP 172.17.0.2。 这里端口80暴露在Dockerfile中。 vi Dockerfile FROM ubuntu:14.04 MAINTAINER debu3645@yahoo.com RUN sudo apt-get update && sudo apt-get -y install iputils-ping traceroute apache2 EXPOSE 80 ENTRYPOINT ["apache2ctl"] CMD ["-D","FOREGROUND"] CONT2仅基于Ubuntu。 在这个容器中没有Apache,它已经得到IP 172.17.0.4。 我已经将CONT2(源)与CONT1(接收器)“连接”。 我可以从CONT2 ping CONT1,反之亦然。 sudo docker run -d –name CONT1 debapcping (debapcping image contains ubuntu, apache) sudo docker run -d […]