我试图在Elastic MapReducestream上运行Docker,但遇到权限问题。 在我的引导脚本中,我需要“hadoop”用户成为“docker”组的一部分(如在AWS Docker Basics页面中所述 ): sudo usermod -a -G docker hadoop 但我不能注销或产生一个子shell(与newgrp)。 有没有办法强制组设置在我当前的shell会话中生效?
我有三个docker容器,我已经创build了systemd脚本在启动时运行。 我已经运行systemctl enable xxxx所有三个服务,我也尝试了systemctl reenable xxxx以及。 我从docker文件创build了脚本。 如果我用service xxx start运行脚本,脚本运行良好。 每当我重新启动,docker服务运行正常,但三个脚本保持加载,但不活动: ● guacd.service – Redis container Loaded: loaded (/etc/systemd/system/guacd.service; enabled; vendor preset: enabled) Active: inactive (dead) 我的脚本/etc/systemd/system/guacd.service : [Unit] Description=Redis container Requires=docker.service After=docker.service [Service] Restart=always ExecStart=/usr/bin/docker start -a guacd ExecStop=/usr/bin/docker stop -t 2 guacd [Install] WantedBy=local.target
目前,我正在使用Docker-Compose开发一个小团队。 我将描述我们目前正在面对的设置和场景。 我们有一个项目签入我们的VCS。 开发者检查了这一点,做一个“docker – 组成”,所有在一个主机,但在家庭文件夹。 这将创build默认networking,并自动将一个子网分配给新的默认networking(迄今为止,“docker-compose”)。 这对我们来说是非常好的,因为它将开发环境彼此隔离开来,并允许我们在Compose文件中使用命名的服务来访问我们的数据库等 – 所有这些都不需要脚踏实地,开发人员也不需要手动configuration任何东西。 这个障碍是 这个默认networking有一个不断增加的子网172。*。0.0。 直到我们到达公司networking上正在使用的子网为止。 例如:我们的VPN使用172.19.0.0。 我们有大约4或5个这样的子网,当有足够的开发人员启动堆栈时,我们会创build访问问题。 其他人如何使用Docker Compose来pipe理这种情况以进行开发? 从本质上讲,我们有许多运行Docker的主机,每个应用程序上有许多不同的应用程序和许多开发人员。 在撰写文件中定义一个子网; 每个用户; (确保所有子网是唯一的,无论主机是什么)将成为一个绝对的噩梦来pipe理,并可能成为电子表格pipe理的一个练习。 我甚至找不到一种强制Docker-Compose来使用不同的子网范围的方法,比如10.0.0.0等 – 这对我们的公司networking来说是很好的。 任何帮助这种configuration将不胜感激。 当然其他人使用Docker-Compose来创build开发环境? 问候
我已经安装了一个solr服务器。 这是一个Ubuntu服务器,docker是使用的networking服务器。 我能够从外部访问solr实例,但是我的web服务器无法通过内部ip访问solr实例,即使它们都是同一个默认安全组的一部分。 我在访问实例时遇到了一些问题,但是通过在/ etc / default / jetty中设置JETTY_HOME = 0.0.0.0(根据指示看起来不工作,将其留空),我终于可以通过外部访问了。 Netstat显示tcp6 0 0 ::: 8080 ::: * LISTEN
我想configuration,以便docker运行PHP文件,但到目前为止还没有成功。 我的Eclipse IDE中安装了Jetty WTP工具。 当我启动Jetty服务器。 我得到的exception: java.lang.ClassNotFoundException org.mortbay.servlet.CGI:org.mortbay.servlet.CGI和javax.servlet.UnavailableException:org.mortbay.servlet.CGI 。 我把一个简单的PHP文件(index.php)放在我的WebContent文件夹下。 我也下载了这个库,并将其添加到类path(Eclipse:构buildpath并添加外部jar)。 我现在不知道我做错了什么。 我也编译了PHP: ./configure –with-fastcgi=/usr/local make sudo make install 我的web.xml文件如下所示: <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>Sample PHP Application</display-name> <servlet> <servlet-name>PHP</servlet-name> <servlet-class>org.mortbay.servlet.CGI</servlet-class> <init-param> <param-name>commandPrefix</param-name> <param-value>/usr/local/bin/php-cgi-fix</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>PHP</servlet-name> <url-pattern>/index.php/*</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.php</welcome-file> </welcome-file-list> </web-app> 它可能是我的php-cgi-fix文件,当我打开它的时候,我得到了随后的文本: $ /usr/local/bin/php-cgi-fix ; exit; /usr/local/bin/php-cgi-fix: line […]
我已经在我的服务器(Ubuntu 9.10)上安装了solr(lucidworks-enterprise-installer-1.7.jar)[jetty],并且创build了一个cron作业来build立每天早上的FULL索引 30 3 * * * curl http://127.0.0.1:8888/solr/collection1/dataimport_1?command=full-import 问题是:有时这个过程完全抹去旧的索引,并没有创造任何东西! 任何想法,为什么这是? 和任何想法如何创build一个整洁的日志solr(类似于apache日志) 谢谢你的帮助
我有一个Ubuntu 12.04服务器虚拟箱,其中基本上安装的软件和configuration是默认的,另外还安装了一个服务器几个网站的jetty 6服务器。 为了简单起见,我并没有安装Apache httpd,而是使用iptables将端口80(在8080端口上运行)公开到端口80.这些是 / sbin / iptables -t nat -L Chain PREROUTING (policy ACCEPT) target prot opt source destination REDIRECT tcp — anywhere localhost tcp dpt:http redir ports 8080 REDIRECT tcp — anywhere Ubuntu-1104-natty-64-minimal tcp dpt:http redir ports 8080 Chain INPUT (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target […]
我有一个app.war,其中包含app.conf文件,我加载使用ClassLoader.getResource(…)一切正常,在开发中,在生产中,我想放置一个不同的app.conf文件,其中将包含秘密数据库密码等AHEAD战争的类path中捆绑app.conf文件。 有没有办法在docker做到这一点?
有时Jetty会将我们的服务器加载100% – 每个线程100%的1个核心。 我们有docker9和JDK 1.7(在docker6和JDK 1.7 – 这不会出现)。 Jetty现在运行在默认设置下,以前我们使用JAVA_OPTIONS="-Xms4096m -Xmx4096m -server -XX:+UseConcMarkSweepGC" 我做了主线程的转储(用jstack -F pid),但是这没有给我什么(我只是不明白)。 倾倒 有什么方法可以确定哪些进程/项目加载CPU?
从shell中运行以下命令(在path中使用https://github.com/jpetazzo/pipework中的pipework )时,一切都很好: #> docker run -i -t -d –expose=22 <DEBIAN_STABLE_IMAGE_ID> /bin/bash #> pipework br0 <CONTAINER_ID_PRODUCED_BY FIRST_CALL> 10.10.10.2/24 一个容器被启动,并在请求的IP上可以ping通。 但是,如果我将这两个调用包装在一个ansible ( http://www.ansible.com )剧本(捕获前者的输出并使用register在后者中使用)中,那么只有第一个调用容器启动),但第二个失败。 我不知道为什么。 我在剧本中使用了sudo=true ,并以sudoing用户的身份显式login,并且使用前缀sudo发出sudo – 工作得很好……我很感激任何洞察力。 真诚的,约翰