Tag: Linux容器

如何让Web服务器从Docker容器中正常工作?

我已经configuration了Web服务器,以便在Docker容器中运行。 这一次,一个不工作。 我的Docker主机正在运行Ubuntu。 当其中包含Web服务器应用程序的Docker容器正在运行时,nmap命令显示外部IP地址和端口被“过滤”。 当Docker容器不运行时,nmap显示状态为“closures”。 这不是我所期望的。 Web浏览器显示“连接已重置”,不pipeDocker容器是否正在运行。 考虑到我所看到的nmap结果,这并不奇怪。 在支持Web服务的Docker容器中,我通常可以运行apt-get update和其他apt-get install命令。 但是我不能用这个问题容器。 我得到“失败解决'deb.debian.org'”。 我不确定这是否相关。 我试着用8.8.8.8和8.8.4.4configuration文件/etc/docker/daemon.json。 这个文件似乎没有做任何事情。 我尝试重新启动Docker服务器。 我停用了Docker服务器上的IP版本6。 我可以禁用防火墙。 为什么将Docker容器configuration为使用端口会导致在Docker容器运行时nmap命令显示端口被过滤? 我正在使用AWS服务器。 没有被注释掉的resolv.conf的内容是这些: nameserver 172.31.0.2 search us-east-2.compute.internal 更新/编辑。 为了回应以前的评论,我想在这里发布格式更好的信息。 curl ipinfo.io显示这个(但我用xxxxreplace了IP地址) { "ip": "xxxx", "hostname": "ec2-xxxx.us-east-2.compute.amazonaws.com", "city": "Columbus", "region": "Ohio", "country": "US", "loc": "39.9653,-83.0235", "org": "AS16509 Amazon.com, Inc.", "postal": "43215" } sudo iptables -S显示这个(但我用xxreplace了IP地址的最后两个八位字节) -P INPUT […]

Nvidia-docker将文件夹添加到容器

我很新的docker集装箱。 我知道有ADD和COPY操作,所以一个容器可以看到文件。 如何让容器访问给定的目录,我可以把我的数据集? 比方说,我有一个/ home /用户名/数据集目录如何在/数据集或在docker容器中的东西,所以我可以参考它? 有容器引用主系统上的一个目录的方法,所以你不必有重复的文件。 其中一些数据集将是相当大的,虽然我可以删除原来的复制后..这只是烦人,如果我想在docker容器外的文件做一些事情。

泊坞内的僵尸

我有一个docker容器,它运行node.js应用程序。 这个应用程序运行一个无头的实例。 一切工作正常,但如果我杀死铬实例,并检查运行的进程列表,我会看到2(实际上3 + 2猫进程)僵尸铬进程( 停止 )仍然在系统中。 我知道这个进程是一个subprocess(被杀死的父进程),这个进程没有完成正确的,并附加到init进程。 我试图直接杀死它 – 拒绝。 此外,我试图产卵铬与detached:true旗,并再次杀死所有的subprocess,当主铬接收到“退出”信号,无论如何ps -A | grep chrome ps -A | grep chrome显示了两个不存在给我。 有任何想法吗? UPD:感谢所有的帮助。 添加–init完全解决了我的问题。 使用另一个基本的图像也很好,但我决定这个方法不是必须的。 也可以在这里find根源的很好的描述

我如何使用docker检查来找出我的IP

作为初学者,我读Docker High Performance遇到了一个问题。 在我连接了我的容器之后,我确认了这个链接是有贡献的。 sudo docker inspect -f " {{ .HostConfig.Links }}" destination [/source:/destination/webapp] 然后我试图检查我的IP,但没有出现 sudo docker inspect -f "{{ .NetworkSettings.IPAddress }}" source 我尝试了另一种方式。 ~$ sudo docker inspect –format '{{ .NetworkSettings.IPAddress }}' source 最后我检查了我的iptables $ sudo iptables -L DOCKER Chain DOCKER (1 references) target prot opt source destination 请告诉我如何获得我的IP。 谢谢!

如何为给定的Linux文件夹内的所有文件提供默认权限

我需要使在特定的Linux目录中创build的任何文件具有777权限。 我想让所有的用户能够在这个文件夹下的所有文件上进行读,写和执行。 那么什么是最好的方法或Linux命令来实现呢? 我正在做的是,我旋转了两个单独的容器,一个用于Nginx服务器,另一个用于PHP:FPM应用服务器,以托pipeLaravel 5.4应用程序。 请考虑以下情况。 我有一个Docker应用程序容器A(PHP:FPM),用于将Web应用程序文件提供给Docker容器B(Nginx)。 现在,当我访问网站时,我通过networking容器提供网页。 这两个容器都在同一个networking中,我将我的应用程序容器中的卷共享到我的Web容器。 但是,当Web容器试图读取应用程序容器上的文件时,我得到如下所示的错误: stream或文件“/var/www/storage/logs/laravel.log”无法打开:无法打开stream:权限被拒绝 所以我在我的docker文件中添加了RUN chmod -R 777 storage 。 但是这不是解决问题的方法。 所以我也尝试使用SGID来解决这个问题,在我的dockerfile中添加一行作为RUN chmod -R ug+rwxs storage 。 仍然没有解决许可的问题。 在一个单独的笔记,有趣的是,在我的MAC泊坞窗容器这工作没有任何问题(我的意思是没有添加chmod -R 777到文件夹或使用SGID设置许可到我的泊坞窗文件中的文件夹)。 但是,如果在Linux AMI EC2实例(Amazon AMI Linux EC2)上运行相同的代码,则会发生权限问题。 那么我该如何解决这个问题呢?

Docker构build失败:返回一个非零的代码:1

Dockerfile1 FROM ubuntu:latest MAINTAINER ME RUN apt-get update RUN apt-get update && apt-get install -y net-tools \ && apt-get install inetutils-traceroute \ && apt-get install iputils-ping \ && apt-get install xinetd telnetd Dockerfile2 FROM ubuntu:latest MAINTAINER ME RUN apt-get update RUN apt-get update && apt-get install -y net-tools RUN apt-get update && apt-get install inetutils-traceroute […]

Docker守护进程不会在centos 6上启动

我正在尝试在Centos 6机器上安装Docker。 我知道内核是旧的,但我没有更新的可能性。 我无法启动守护进程,由于devicemapper错误而崩溃,文件/ dev / loop-control不存在。 如果我启动deamon,这就是我所拥有的 sudo docker -d -D DEBU[0000] Registering GET, /images/get DEBU[0000] Registering GET, /images/{name:.*}/get DEBU[0000] Registering GET, /images/{name:.*}/history DEBU[0000] Registering GET, /images/{name:.*}/json DEBU[0000] Registering GET, /_ping DEBU[0000] Registering GET, /events DEBU[0000] Registering GET, /images/json DEBU[0000] Registering GET, /containers/{name:.*}/changes DEBU[0000] Registering GET, /containers/{name:.*}/logs DEBU[0000] Registering GET, /exec/{id:.*}/json DEBU[0000] Registering GET, […]

Docker守护进程启动失败

尝试在ARMv7上的本机linux上运行docker守护进程。 但它在netpollinit , epollcreate失败。 几乎添加了运行Docker所需的configuration。 你能帮我解决这个问题吗? 我错过了什么吗? 以下是日志。 # ./docker-1.9.1 daemon netpollinit: failed to create epoll descriptor 38 fatal error: netpollinit: failed to create descriptor runtime stack: runtime.gothrow(0xddb370, 0x28) The Running config from target, Generally Necessary: – cgroup hierarchy: nonexistent?? (see https://github.com/tianon/cgroupfs-mount) – apparmor: enabled and tools installed – CONFIG_NAMESPACES: enabled – CONFIG_NET_NS: enabled – […]

关于Linux上的Azure应用程序服务上的WordPress上的“cURL错误28:解决超时”问题

Linux上使用自定义Docker容器的Azure App Service上的Wordpress安装具有非常缓慢的响应时间。 加载大约需要20-40秒的时间。 我有一个疑难解答插件安装,指出问题是“cURL错误28:解决超时N毫秒”超时请求下列url https://api.wordpress.org/core/version-check/1.7/ http://api.wordpress.org/core/version-check/1.7/ https://api.wordpress.org/plugins/update-check/1.1/ http://api.wordpress.org/plugins/update-check/1.1/ https://api.wordpress.org/themes/update-check/1.1/ http://api.wordpress.org/themes/update-check/1.1/ cURL可以在scm-site命令行上正常工作。 例如,这工作正常。 curl -X POST http://api.wordpress.org/core/version-check/1.7/ 编辑如果我SSH入容器并运行这个PHP代码,它工作正常。 <?php $url = 'http://api.wordpress.org/core/version-check/1.7/'; $fields = array( 'version' => urlencode('4.8.1'), 'php' => urlencode('7.1.8'), 'locale' => urlencode('fi'), 'mysql' => urlencode('5.6.26.0'), 'local_package' => urlencode('fi'), 'blogs' => urlencode('1'), 'users' => urlencode('4'), 'multisite_enabled' => urlencode('0'), 'initial_db_version' => urlencode('26691') ); foreach($fields as […]

Docker中的Selenium独立服务器 – TimeoutException

我尝试在Selenium Docker容器中使用ChromeDriver 2.31执行基于WebDriver 3.5的testing。 我用这个命令来启动必要的容器: docker run -d -p 4444:4444 -v /dev/shm:/dev/shm selenium/standalone-chrome:3.5.3-astatine 我使用RemoteWebDriver在远程主机上执行testing套件。 它以下面的日志失败: org.openqa.selenium.TimeoutException:timeout(会话信息:chrome = 61.0.3163.79)(驱动程序信息:chromedriver = 2.31.488763,platform = Linux 4.10.0-33-generic x86_64)(警告:服务器没有提供任何stacktrace信息)构build信息:版本:'3.5.2',修订:'10229a9',时间:'2017-08-21T17:29:55.15Z'驱动程序信息:org.openqa.selenium.remote.RemoteWebDriverfunction[{applicationCacheEnabled = false,rotate = false,mobileEmulationEnabled = false,networkConnectionEnabled = false,chrome = {chromedriverVersion = 2.31.488763,userDataDir = /tmp/.org.chromium.Chromium.IAkqFG},takeHeapSnapshot = true,pageLoadStrategy = normal,unhandledPromptBehavior =我们可以使用下面的方法来创build一个新的数据types,其中的数据types可以是数据types:数据types,数据types,数据types,数据types,数据types,数据types,数据types, javascriptEnabled = true,cssSelectorsEnabled = true,setWindowRect = true,un expectedAlertBehaviour =}] 我检查了http://:4444 / wd […]