Tag: 泊坞窗

docker swarm模式下的数据库迁移

我有一个由简单的Node应用程序和Mongo数据库组成的应用程序。 我想知道,我怎么能在docker swarm模式下运行数据库迁移? 在没有swarm模式的情况下,我通过先停止旧版本的应用程序,运行一次性迁移命令和新版本的应用程序,然后启动新版本的应用程序来运行迁移: # Setup is roughly the following $ docker network create appnet $ docker run -d –name db –net appnet db:1 $ docker run -d –name app –net appnet -p 80:80 app:1 # Update process $ docker stop app && docker rm app $ docker run –rm –net appnet app:2 npm run […]

所有正在运行的docker容器是否有独立的进程ID

所有正在运行的docker容器都有一个单独的进程ID。 如果是的话,怎么能得到那个。 另外,如果我们杀死这个过程会发生什么?

如何将Docker卷从一台机器复制到另一台机器?

我在本地机器上为postgres创build了一个docker卷。 docker create volume postgres-data 然后,我用这个卷,并运行一个docker。 docker run -it -v postgres-data:/var/lib/postgresql/9.6/main postgres 之后,我做了一些数据库操作,自动存储在postgres数据。 现在我想从我的本地机器复制该卷到另一台远程机器。 如何做同样的事情。 注 – 数据库大小非常大

Django与Docker错误 – “无法连接到'127.0.0.1'(111)上的MySQL服务器”)

我想用Django使用Docker,但是我得到错误 – db_1 | error: database is uninitialized and password option is not specified db_1 | You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1' (111)") db_1 | error: database is uninitialized and password option is not specified db_1 | You need to specify one […]

Java的NIO内存映射docker装入文件失败

我最近运行到docker,并将我的Java应用程序部署到tomcat泊坞窗容器。 但是我遇到了一个关于NIO内存映射文件的非常具体的错误: File mark = new File("/location/to/docker/mounted/file"); m_markFile = new RandomAccessFile(mark, "rw"); MappedByteBuffer m_byteBuffer = m_markFile.getChannel().map(MapMode.READ_WRITE, 0, 20); 最后一个函数调用失败,如下所示: Caused by: java.io.IOException: Invalid argument at sun.nio.ch.FileChannelImpl.map0(Native Method) at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:906) at com.dianping.cat.message.internal.MessageIdFactory.initialize(MessageIdFactory.java:127) at com.dianping.cat.message.internal.DefaultMessageManager.initialize(DefaultMessageManager.java:197) … 34 more 我不知道发生了什么事。 我在我的Mac环境中testing过,没关系。 在tomcat docker容器中,我将文件位置更改为正常的文件path,也没关系。 看来只发生在docker安装的文件。 其他信息: root@4520355ed3ac:/usr/local/tomcat# uname -a Linux 4520355ed3ac 4.4.27-boot2docker #1 SMP Tue Oct 25 19:51:49 UTC […]

docker运行映像导致语法错误/ bin / sh

当我在我的映像上运行docker命令时,它出错了。 任何想法,我应该包括在我的Docker文件的CMD? 目前我有java -jar my.jar 。 docker run startlog /bin/sh: 1: Syntax error: Unterminated quoted string

卡夫卡在docker工人不工作

我试图用wurstmeister\kafka-docker docker-compose来使用wurstmeister\kafka-docker图片,但是我在连接所有东西时遇到了实际的问题。 我查的所有post或者问题似乎没有任何问题,但是我坦白的说是输了。 (至less有两个问题试图解决这个问题) 我相信问题是我对docker的networking了解docker 。 所以问题是: 我可以从同一个kafka容器中进行消费和生产,但是当我尝试创build另一个容器时(或者使用我的笔记本电脑和python客户端),我得到了一些与advertised.host.name参数有关的错误(在图像中,这个参数是KAFKA_ADVERTISED_HOST_NAME ) 我已经尝试以很多方式设置这个variables,但它不起作用。 所以我正在寻找一个authorative答案(即如何自动设置这些参数,这是什么意思)如何设置docker-compose.yml 这是我的: zookeeper: image: wurstmeister/zookeeper ports: – "2181:2181" kafka: image: wurstmeister/kafka # hostname: kafka ports: – "9092" links: – zookeeper:zk environment: KAFKA_ADVERTISED_HOST_NAME: "kafka" KAFKA_ADVERTISED_PORT: "9092" KAFKA_ZOOKEEPER_CONNECT: "zk:2181" UPDATE 遵循@dnephin的build议,我修改了以下几行中的start-kafka.sh : … if [[ -z "$KAFKA_ADVERTISED_PORT" ]]; then export KAFKA_ADVERTISED_PORT=$(hostname -i) fi … 并从KAFKA_ADVERTISED_HOST_NAME: "kafka" docker-compose.yml移除KAFKA_ADVERTISED_HOST_NAME: […]

装入泊坞窗主机卷,但用容器的内容覆盖

有几篇文章对于理解Docker的卷和数据pipe理非常有帮助。 这两个特别好: http://container-solutions.com/understanding-volumes-docker/ http://www.alexecollins.com/docker-persistence/ 但是,我不确定是否讨论了我正在寻找的内容。 这是我的理解: 当运行docker run -v /host/something:/container/something ,主机文件将覆盖(但不覆盖)指定位置的容器文件。 该容器将不再有权访问该位置的以前的文件,而只能访问该位置的主机文件。 在Dockerfile中定义一个卷时,其他容器可能会共享由图像/容器创build的内容。 主机也可以查看/修改一个Dockerfile卷,但只有在使用docker inspect发现真正的挂载点之后。 (通常是/var/lib/docker/vfs/dir/cde167197ccc3e138a14f1a4f7c…. )。 但是,当Docker必须在Virtualbox虚拟机内部运行时,这是多余的。 我的问题很简单。 如何反转叠加,以便在装入卷时,容器文件优先于我的主机文件? 我想指定一个可以轻松访问容器文件系统的挂载点。 但似乎没有人问这个问题。 我知道我可以使用一个数据容器,或者我可以使用docker inspect来查找挂载点,但在这种情况下解决scheme都不是一个好的解决scheme。

docker jboss7 war commit。 服务器启动以不可恢复的方式失败

有没有办法将.war文件部署到Docker容器内运行的Jboss-as7中 因为我的jboss服务器似乎在Docker提交后失败。 Could not rename /usr/local/share/jboss/standalone/configuration/standalone_xml_history/current to /usr/local/share/jboss/standalone/configuration/standalone_xml_history/20140107-050049692 我试过了 chmod +w usr/local/share/jboss/standalone/configuration/standalone_xml_history 参考: https://docs.jboss.org/author/display/AS7/Configuration+file+history 现在,如果我停止docker集装箱,我不得不部署战争文件,并在此之后不做docker提交。 我正在使用运行在stream浪汉上的Ubuntu 12.04 我使用一个主pipe来运行ssh和jboss7。 我的主pipe文件: [supervisord] nodaemon=true [program:sshd] command=/usr/sbin/sshd -D stdout_logfile=/var/log/supervisor/%(program_name)s.log stderr_logfile=/var/log/supervisor/%(program_name)s.log autorestart=true [program:jboss] command=/usr/local/share/jboss/bin/./standalone.sh -Djboss.bind.address=0.0.0.0 -Djboss.bind.address.management=0.0.0.0 stdout_logfile=/var/log/supervisor/%(program_name)s.log stderr_logfile=/var/log/supervisor/%(program_name)s.log autorestart=true 接下来我的步骤: vagrant up [default] Forwarding ports… [default] — 10022 => 10022 (adapter 1) [default] — 8080 => 18080 (adapter 1) Jboss-as7日志: […]

Docker启动后Wifi连接丢失

我通过Wifilogin到我的Lubuntu 16.04.2 LTS服务器,每次启动Docker容器时,连接都会断开。 因为我对docker工人来说比较陌生,所以我只能猜测这与docker工人的虚拟networking创build有关。 我还应该提到,我禁用了ipv6,但是如果启用它没有任何区别。 这里是我的系统日志 ,它显示了当我运行sudo docker run -it ubuntu bash时会发生什么情况。 我可以看到容器/ Ubuntu的提示2-3秒,然后冻结。 运行它–net=host工作,但不是我想要的。 ifconfig显示 docker0 Link encap:Ethernet HWaddr 02:42:8d:8b:b7:4c inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:8 errors:0 dropped:0 overruns:0 frame:0 TX packets:162 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:536 (536.0 B) TX bytes:9678 (9.6 KB) lo Link […]