我用nginx在主机上使用dokku(小heroku),我的容器是使用apache,它暴露的端口8052。 这是启用和工作正常的.conf里面的configuration: LISTEN 8052 <VirtualHost *:8052> ServerAdmin veeenex@localhost DocumentRoot /var/www <Directory /> Options +FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options +FollowSymLinks +ExecCGI AllowOverride All Order allow,deny allow from all </Directory> FCGIWrapper /phpfarm/inst/php-5.2/bin/php-cgi .php AddHandler fcgid-script .php LogLevel warn ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> 这是主机上的configuration upstream katalog.domain.eu { server 172.17.0.3:8052; } server { listen [::]:80; […]
我想分析单个docker集装箱的最大内存(RAM +交换)使用率和最大CPU利用率。 我知道可以使用docker docker stats和/sys/fs/cgroup/memory/docker//memory.stat (和相应的cpu伪文件)获取实时信息,但是每隔几ms获取一次信息似乎并不是一件好事去寻找高峰的方法。 有没有办法做到这一点? 我在我的主机上使用Ubuntu 16.04 LTS和1.11.2。
我已经完成了一台机器docker设置的工作,现在想删除我不再用来回收磁盘空间的额外图像。 但是,我find的下面的命令不会返回任何内容,即使没有容器的情况下也容易出现20多个图像: docker images –filter "dangling=true" -q 这是最近的docker变化,我不知道? root@server:~# docker version Client: Version: 1.12.0 API version: 1.24 Go version: go1.6.3 Git commit: 8eab29e Built: Thu Jul 28 22:11:10 2016 OS/Arch: linux/amd64 Server: Version: 1.12.0 API version: 1.24 Go version: go1.6.3 Git commit: 8eab29e Built: Thu Jul 28 22:11:10 2016 OS/Arch: linux/amd64 root@server:~# docker info Containers: […]
我正在尝试使用Nginx,Docker和Supervisor来安装服务器。 我面对的问题是,即使它工作,我可以看到index.html在我的浏览器,这个错误显示所有的时间: 2016/08/28 12:05:12 [emerg] 12#12: bind() to [::]:80 failed (98: Address in use) nginx: [emerg] bind() to [::]:80 failed (98: Address in use) dockerfile: FROM nginx:stable-alpine RUN rm -f /etc/nginx/conf.d/* && mkdir -p /var/www/app COPY config/nginx.conf /etc/nginx/conf.d/ COPY config/supervisord.conf /supervisord.conf COPY scripts /scripts RUN chmod -R 700 /scripts CMD [ "/scripts/start" ] 在/脚本/开始我有这个: #!/bin/bash […]
所以最终会发生什么,一切都会正常工作,有时几天。 然而,当我执行我的代码的部署(全部包含在它自己的Docker容器中,并且存储在Dockerhub上的图像)时,它会导致Kubernetes崩溃,从而导致其他一切崩溃。 我一直无法找出任何的韵律或理由。 而且大多数情况下,我还没有find任何有助于解决问题的方法。 通常,无论出于何种原因,它都会重新开始工作 – 尽pipe我知道至less一次删除整个实例组并重新开始。 哪些工作。 现在,当我进行部署时,我所做的就是运行kubectl set image deployment命令。 在大多数情况下,只有一次奇怪的事情发生。 现在,更具体地说,奇怪的是,如果我尝试去https://<master node>/ui我会得到这样的错误: { "kind": "Status", "apiVersion": "v1", "metadata": {}, "status": "Failure", "message": "no endpoints available for service \"kubernetes-dashboard\"", "reason": "ServiceUnavailable", "code": 503 } 这是kubectl cluster-info的输出 Kubernetes master is running at https://104.198.207.42 GLBCDefaultBackend is running at https://104.198.207.42/api/v1/proxy/namespaces/kube-system/services/default-http-backend Heapster is running at https://104.198.207.42/api/v1/proxy/namespaces/kube-system/services/heapster KubeDNS […]
我正在尝试使用docker-volume-netshare驱动程序从这里创builddocker卷 : https : //github.com/ContainX/docker-volume-netshare 序列应该是这样的: docker volume create -d cifs <some_options> docker run -v <the_volume> <other_docker_options> 我可以让它工作的一部分,但对于我的生活,我不能让它通过我需要的所有选项。 与其试图叙述我无数不同的失败模式,我宁愿说出我的目标。 在下面,docker-volume-netshare将执行一个mount -t cifs …命令。 当verbose设置为true时,可以在日志中看到。 这是我试图得到的安装命令。 我可以在那里获得用户名和密码,但只有在使用.netrc文件时,我找不到将uid和gid放入命令的方法。 mount -t cifs -o username=myusername,password=mypasswd,uid=500,gid=499,rw //myserver.example.net/mysharename /the_mount_point/ 所以我在寻找的是通过docker-volume-netshare传递这些选项的权威语法。
场景: 我已经安装了一个gcsfuse驱动器到我的docker集装箱,以便我可以存储和读取Google云端存储的数据 Docker容器只有几个存储容量,但是我可能在Google云存储中有Terrabytes的数据 问题是: gcsfuse会从Google云端存储中下载所有数据,还是只在读取文件时才检索文件? 相反,一旦我向挂载的驱动器写入数据,这些数据是保存在本地,还是发送到GCS并从本地存储中删除 ? 总的来说,如果我提出错误的问题 我担心gcsfuse挂载驱动器可能会导致所有的容器存储空间用尽,即使数据实际上存储在Google Cloud上。 我试图评估,如果这是一个合法的关注,或者是gcsfusebuild立来处理这样的情况。 对于那些打算告诉我“只读文档”的人, 是的,我已经尝试过了。 如果这些信息是在文件中,那么它被埋得够深或足够模糊,这在这里可能是值得提出的一个问题。
我需要通过我的Dockerfile中的CMD指令运行两个命令,如下所示: WORKDIR /var/www/project CMD ["/sbin/my_init", "node", "server.js"] 上面提到的方法是正确的吗? 正如我所了解的,Docker的容器方法 – 只要父进程正在运行,每个容器都会一直存在。 但是如果在这种情况下运行两个是父母的呢?
在安装了docker的AWS Amazon Linux上。 下面的命令运行, docker run -itd nginx bash然后 docker ps给了这个: 但是,当我在浏览器中访问服务器IP时,它给出的网站不能到达而不是Nginx页面。 我如何获得Nginx服务器页面? 谢谢
如果我有在Debian或其他发行版上运行的Docker(或其他容器软件),是否意味着我可以在该容器中运行ASP.NET MVC,C#等? 当我说“在Linux上运行”时,我知道这并不意味着只在Docker容器中运行。 Docker是否提供了所有需要的东西,或者让我把它放到容器中? 这不是什么容器? 编辑:我不是指一个黑客或类似的东西。 我问这是不是容器的意图,一个正常的做法。 编辑:我想我理解根据tobyd的答案。 我相信我也在想“嘘”。 我所看到的有关Docker的所有演讲都展示了“HostOS”,然后是Docker,然后是容器。 主持人假设没有像我这样的不知情的人。 但是我从来没有听说过这意味着你不能在这些容器中运行任何东西 。 演示的方式听起来就是如果Docker可以让基础设施运行任何东西,而不是实际上是一个完整的映像操作系统映像(如虚拟机)。 我读过他们如何使用相同的内核,但我从来没有把它放在一起。 这是魔术。 我也明白了为什么我们需要Docker的Windows实现,尽pipe我不确定他们为什么需要Hyper-V(但是我离题了)。