我在ubuntu:16.04基本映像上运行tftpd-hpa。 当我在一个完整的发行版上运行它时,它logging正常,但是在docker容器内没有任何日志。 它似乎试图login到/ var / log / syslog这是缺less。 有没有人有任何build议,我怎么可以从这个日志? 详细程度设置为4,在完整的Ubuntu 16.04安装中给出了合适的详细输出,但容器中没有任何内容。 谢谢
我有一个通过docker run界面运行容器的服务。 我不能修改它的行为而不修改它的源代码。 该服务在swarm中启用的docker集群中运行。 是否有可能切换容器,使其可以通过群集服务/堆栈/任务来pipe理? 我不这么认为,但我可能会感到惊讶?
我有一个由世界各地的各种types的主机使用的tinc VPN网状networking,我想部署一个dockerized dnsmasq名称服务器在该tinc网格中使用。 我已经成功地构build和configuration了一个“胖”的多进程docker容器(使用runit),这正在做我正在寻找的。 它同时运行tinc进程和dnsmasq进程,dnsmasq被configuration为绑定到容器中的tincnetworking接口。 但是现在我正在尝试使用1进程容器来构build相同的function。 我知道如何构build和configuration一个基本的1进程dnsmasq容器,我知道如何构build和configuration一个基本的1进程tinc容器。 我可以写一个简单的docker-compose文件,将它们都带上来。 我不知道该怎么做,就像使用tinc容器作为网关一样,将dnsmasq容器暴露给网状networking,允许该tincnetworking上的其他主机针对dnsmasq运行DNS查询。 那可能吗?
我需要从一个php / php-7.1容器内执行一些命令,作为一个特殊的(标准)用户和PHP-fpm守护进程使用的“ www-data:www-data ”组。 www-data在主机上同时以用户和组的forms存在,并且条目存在于: / etc / passwd www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin / etc / group www-data:x:33: 无论如何,当容器运行时,我首先得到www-data uid和gid,如下所示: // con_php is the running container's name echo $(docker exec -it con_php bash -c 'echo "$(id -u www-data)"''":"''"$(id -g www-data)"') // outputs 33:33, great ! 然后我使用这个(作为一个命令行replace)来提供给我需要在容器中运行的实际命令提供的–user选项。 我现在有: docker exec \ –user $(docker exec -it con_php bash -c […]
我正在尝试在Tomcat8的顶层Docker容器中部署一个SpringMVC应用程序。 我的问题是这个SpringMVC应用程序使用下面的代码接收参数 String username = System.getProperty("db.username"); String password = System.getProperty("db.password"); 我使用以下命令运行Docker容器 docker run -e "db.username=root" -e "db.password=123" -v /home/ubuntu/code:/usr/local/tomcat/webapps -i -t -p 80:8080 tomcat 它启动tomcat conatiner并尝试部署应用程序,但它不起作用并抛出应用程序特定错误用户名为空且密码为空。 System.getProperty不能接收传递的environment varaibles 。 重要提示:请注意我不能更改代码,我只能修改docker相关的东西。 我认为应该有一种方法来将传递的环境variables转换为Java属性(为了使System.getProperties工作)
我有一个Docker镜像,我们称之为frontend.image ,用于Jenkins构build的从机。 Jenkins Docker插件将从这个图像旋转一个容器,并在容器内部构build工件。 这一切都很好。 在这种情况下, frontend.image被用来构build一个AngularJs应用程序。 构build这个Angular应用程序的一部分是安装应用程序需要的npm包。 这个过程,npm install,似乎需要很长时间,看起来好像是3分钟,npm每次都会安装每个包。 所以我为我的奴隶添加了一个卷,它是一个主机装入的卷,Docker插件每次运行前端容器时都会使用这个卷: 执行命令npm install的用户是jenkins 。 npm保留一个caching,你可以用命令npm config get cachefind它,它输出/home/jenkins/.npm 这就是为什么我有主机卷/slaves/volumes/tsl.frontend:/home/jenkins安装到我的Web容器奴隶。 我使用Jenkins项目构build了Angular应用程序,没有任何问题,安装了许多npm软件包。 如果ssh进入我的Docker主机并运行cmd ls /slaves/volumes/tsl.frontend我会看到很多的npm包。 这意味着我的主机卷挂载的奴隶工作。 现在我再次构buildJenkins项目,npm再次安装每个包,即使Docker slave构build容器正在使用卷主机装载。 我甚至可以通过使用cmd docker exec -it <some_clever_random_container_id> bash到slave容器来确认,然后cmd su jenkins然后cmd npm cache ls其中列出了许多caching的npm包。 所以,即使我的主机安装卷,其中有权限chmod 777的方式,所以没有权限问题,我不能让npm install使用caching。 我尝试了常规的npm install cmd,当我在本地主机上运行时,第一次安装所有的软件包,下次几乎没有软件包。 还有npmcaching“hack” npm –cache-min 9999999 install ,取自这个SO回答以及cmd npm –skip-installed –cache-min 9999999 install
我正在运行与docker群的春季启动应用程序,我使用postgres的数据库。 当我将它们都作为docker服务运行时,数据库连接会一直随机失败(正如您可以在时间戳中看到的那样),如日志所示: 2017-10-26T 17:14:15 .200415747Z app-db.1.1ayo6h8ro1og@scw-c2964a | 日志:无法从客户端接收数据:连接重置由对等 2017-10-26T 17:43:36 .481718562Z app-db.1.1ayo6h8ro1og@scw-c2964a | 日志:无法从客户端接收数据:连接重置由对等 2017-10-26T 17:43:56 .954152654Z app-db.1.1ayo6h8ro1og@scw-c2964a | 日志:无法从客户端接收数据:连接重置由对等 2017-10-26T 17:44:17 .434171472Z app-db.1.1ayo6h8ro1og@scw-c2964a | 日志:无法从客户端接收数据:连接重置由对等 2017-10-26T 17:49:04 .154174253Z app-db.1.1ayo6h8ro1og@scw-c2964a | 日志:无法从客户端接收数据:连接重置由对等 我无法理解或发现原因。 我会很感激任何想法。 编辑: 我们意识到,在testing应用程序时,它也会抛出这样的错误: SQLTransientConnectionException:HikariPool-1 – 连接不可用,请求在937517ms后超时 谢谢。
我是Kubernetes ,并试图用minikube来build立一个集群。 尝试使用minikube启动群集时,会失败,并显示以下错误消息 $ minikube start –vm-driver=kvm Starting local Kubernetes v1.8.0 cluster… Starting VM… Downloading Minikube ISO 140.01 MB / 140.01 MB [============================================] 100.00% 0s E1107 12:30:30.581841 13820 start.go:150] Error starting host: Error creating host: Error with pre-create check: "Unable to connect to kvm driver, did you add yourself to the libvirtd group?". ================================================== ======================== […]
我正在尝试使用Docker容器作为本地DNS服务器来重写专用networking中的现有域的IP。 我的设置是我有一个私人networking,有一些机器和一个路由器,有一个互联网可访问的公共IP。 其中一台机器通过将一个端口从路由器路由到它,在一个指向公共IP的域(比如example.com)上向互联网提供一些内容。 关键是私有networking中的其他机器也需要访问该服务器。 然而,路由器阻止来自内部的数据包访问公共IP。 所以我想我会使用这个容器作为本地DNS服务器来覆盖与本地的公共IP。 总之这是networking: Ubuntu IP地址为192.168.1.6〜> docker主机 用于IP地址为192.168.1.4〜>的主机 其他IP地址范围为192.168.1.0/8的机器 所有机器的DNS服务器设置为192.168.1.6 现在使用这个组合文件来设置BIND: version: '2' services: bind: image: sameersbn/bind:latest restart: always dns: 8.8.8.8 logging: driver: "json-file" options: max-size: "200k" max-file: "10" environment: – ROOT_PASSWORD=somepass ports: – 10000:10000 – 53:53/udp volumes: – ./data:/data 并有这个configuration: acl localclients { 192.168.0.0/16; 172.17.0.0/16; 172.23.0.0/16; localhost; localnets; }; options { […]
我有一个端口8080上的Ubuntu服务器上运行的Docker容器。我可以通过localhost访问web容器:8080 现在我想通过相对URL从公共IP访问这个容器。 例如:19x.xx.xx.xx / gitlab 我创build了一个在Apache中反转的代理,但是我只能加载主页面,没有css,js或其他资源,比如web内部的链接,因为它们是相同的,所以我不能从外部访问它们。 ProxyPass /gitlab/ http://localhost:8080 ProxyPassReverse /gitlab/ http://localhost:8080 有没有什么办法来映射网页上的所有资源,并使用Apache的相对URLredirect?