Tag:

来自docker容器的ERR_EMPTY_RESPONSE

我一直试图在最后几个小时里弄清楚,但是我被卡住了。 我有一个非常简单的Dockerfile,看起来像这样: FROM alpine:3.6 COPY gempbotgo / COPY configs /configs CMD ["/gempbotgo"] EXPOSE 8025 gempbotgo只是一个运行Web服务器和其他东西的二进制文件。 networking服务器在8025上运行,应该回答一个问候世界。 我的问题是与暴露端口。 我像这样运行我的容器(build立之后) docker run –rm -it -p 8025:8025 asd 一切似乎都很好,但当我尝试在浏览器中打开127.0.0.1:8025或尝试一个wget我只是得到一个空的答复。 Chrome:ERR_EMPTY_RESPONSE 该端口被使用,而不受我的Windows 10系统上的防火墙的限制。 在没有容器的情况下运行二进制二进制文件,只需在我的“Windows上的Ubuntu上的Bash”terminal上浏览到127.0.0.1:8025即可。 其他地址返回一个“ERR_CONNECTION_REFUSED”像127.0.0.1:8030,所以那里定义是在端口上的活动。 然后我和他一起走进了那个混蛋 docker exec -it e1cc6daae4cf /bin/sh 并用wget在那里检查会发生什么。 也没有问题。 index.html文件下载一个“Hello World” 任何想法为什么docker不发送任何数据? 我也用docker-compose运行了我的容器,但是没有区别。 我也在外部托pipe的VPS上运行容器。 同样的问题在那里…(Debian) 我的代码:(注意Makefile) https://github.com/gempir/gempbotgo/tree/docker 编辑: 得到一些评论后,我改变了我的Dockerfile到一个多阶段的构build。 这是我的Dockerfile现在: FROM golang:latest WORKDIR /go/src/github.com/gempir/gempbotgo RUN […]

Linux Ubuntu LTS 16.04 – 重启后,Docker恢复到新版本

我通过这个命令在我的Ubuntu上安装了Docker引擎1.13: sudo apt-get install docker-engine=1.13.1~cs6-0~ubuntu-xenial 但重新启动我的机器,当我sudo docker info ,我看到安装docker引擎17.06-ce。 任何想法为什么它恢复到17.06,我怎样才能永久重新启动我的机器1.13docker引擎?

如何在docker机器中为机器设置TLS证书

我想做的事: 我有dockerd在TLSvalidation设置为true的一台机器上运行。 我想添加这个主机作为一台机器在docker-machine 我做了什么: 我用下面的命令启动dockerd: $ sudo dockerd -D –tls=true –tlscert=cert.pem –tlskey=key.pem -H tcp://172.19.48.247:2376 在第二台机器上,我得到了以下variables: export DOCKER_HOST=tcp://172.19.48.247:2376 export DOCKER_TLS_VERIFY=1 export DOCKER_CERT_PATH=/path/to/ssl 并成功运行docker命令: $ docker run busybox echo hello hello 然后我添加了这个主机docker-machine: docker-machine create –driver none –url=tcp://172.19.48.247:2376 dockerhost 我哪里去错了: 我正在获取x509: certificate signed by unknown authority错误x509: certificate signed by unknown authority的x509: certificate signed by unknown authority 。 $ […]

如何使用docker-machine部署docker组成的应用程序?

如何用简单的Rails应用程序使用docker-machine部署docker-compose应用程序? 这是否有道理? 我已经阅读了关于该主题的多篇文章,其中包括正式的Docker文档 ,内容包括生产中的Compose和Rackspace的远程部署指南 ,但其中没有一篇适合我。 我有一个非常简单的Rails应用程序,由以下docker-compose文件描述: version: '3' services: app: build: context: . dockerfile: containers/production/Dockerfile image: projectname:app command: containers/production/bootstrap.sh ports: – 3000:3000 volumes: – .:/app – gems:/gems depends_on: – db environment: – DOCKERIZED=1 db: image: postgres:9.6 ports: – '5432:5432' volumes: – data:/var/lib/postgresql/data volumes: data: gems: 接下来,我试图使用docker-machine将其部署到远程主机: eval "$(docker-machine env production)" docker-compose build docker-compose up -d […]

基于Docker的开发环境适用于多个项目

我想知道基于Docker的开发环境和LAMP堆栈的最佳体系结构。 要求 并行处理多个项目 大多数项目都使用相同的LAMP堆栈(为了简单起见,我们假设所有项目都共享相同的堆栈和configuration) 主机运行Windows + VBox + Docker工具箱(即Boot2Docker) 目前的架构 一个共享的开发环境,在每个站点上运行多个容器(web,db,持久数据)和vhostsconfiguration 使用脚本/ Jenkins容器来设置新项目(新的DB,虚拟主机configuration..) 运行自定义Samba容器与Windows计算机共享数据(IDE在Windows上运行) 一如既往有优点。 虽然这样做很容易维护,但是我们无法真正地使用专门的docker-compose.yml文件部署一个特定的项目,而且我们也无法获得“微服务”的所有好处,例如replacePHP /特定站点的MySQL版本。 问题是我们如何使用每个项目docker-compose.yml文件,但仍然有多个项目同时运行(因为所有项目都使用端口80)。 它会更好(甚至有可能吗?)使用每个项目的随机端口,并在这些Web容器之上运行代理层? 这个用例的其他选项或通用devise模式? 谢谢。

无法使用Docker窗口更改卷上文件/文件夹的权限

我试图用Docker窗口更改卷上文件/文件夹的权限。 但是,权限并没有被意外地改变。 环境:主机:Windows 10 Pro Docker版本17.09.0-ce,生成afdb6d4 重现步骤: 使用下面的Dockerfile构build一个图像。 运行容器的容器。 更改文件/文件夹的权限。 Dockerfile: FROM microsoft/windowsservercore CMD [ "powershell" ] 输出: D:\data\docker\sample>docker build -t sample . Sending build context to Docker daemon 1.272GB Step 1/2 : FROM microsoft/windowsservercore —> 2cddde20d95d Step 2/2 : CMD powershell —> Running in dd207fe8b262 —> e0203df155cd Removing intermediate container dd207fe8b262 Successfully built e0203df155cd […]

当外部链接的容器实际上使用docker-compose运行时,如何避免“Docker无法链接到非运行容器”错误

我们想要做什么: 我们希望使用docker-compose将一个已经运行的容器(A) 通过容器名称链接到另一个容器(B)。 我们使用“ external-link ”,因为两个容器都是从不同的docker-compose.yml文件启动的。 问题: 虽然具有该名称的容器正在运行,但容器B无法启动该错误。 ERROR: for container_b Cannot start service container_b: Cannot link to a non running container: /PREVIOUSLY_LINKED_ID_container_a_1 AS /container_b_1/container_a_1 “docker ps”的输出 : CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES RUNNING_ID container_a "/docker-entrypoint.s" 15 minutes ago Up 15 minutes 5432/tcp container_a_1 示例代码: docker-compose.yml容器B : container_b: external_links: – container_a_1 与其他“如何解决”这个问题有什么不同? […]

如何正确共享两个容器之间的相同主机卷?

因为当Docker Compose改变了它的组成文件版本时, volumes_from消失了,我在如何在不同的容器之间共享一个卷时感到有点volumes_from 。 看下面的例子,一个PHP应用程序住在一个PHP-FPM容器中,Nginx住在第二个。 version: '3.3' services: php: build: context: ./docker/php7-fpm args: TIMEZONE: ${TIMEZONE} env_file: .env volumes: – shared-volume:/var/www nginx: build: ./docker/nginx ports: – 81:80 depends_on: – php volumes: – shared-volume:/var/www volumes: shared-volume: driver_opts: type: none device: ~/sources/websocket o: bind 为了使应用程序的工作当然Nginx不得不访问PHP文件,并有volumes_from帮助我们很多。 现在这个选项已经没有了。 当我尝试命令docker-compose up它结束与以下消息: 错误:对于websocket_php_1无法创build容器的服务php:错误,同时挂载卷选项:type ='none'device ='〜/ sources / websocket'o ='绑定':没有这样的文件或目录 如何正确共享两个容器之间的相同主机卷?

manage.py不会login到树莓派上的Docker的stdout / stderr

在Raspberry Pi 2上,我使用image resin/rpi-raspbian:stretch来运行Django应用程序。 在我的Dockerfile中,我安装python3软件包并使用ENTRYPOINT python3 manage.py runserver 0:8000来启动应用程序。 这工作,但是当我的代码抛出错误,我没有使用docker log命令输出。 例 我有一个ImportError。 当我使用docker exec手动运行命令时,我得到了预期的exception: pi@pi2:/etc/docker/container/pms $ sudo docker exec -it pms_app_1 python3 manage.py runserver 0:8000 Unhandled exception in thread started by <function check_errors.<locals>.wrapper at 0x75de3228> […] ImportError: No module named 'ws4redisfrontend' 但是当我使用docker-compose运行容器然后打开日志时,它们是空的: pi@pi2:/myapp $ sudo docker logs myapp_1 pi@pi2:/myapp $ 这种行为只存在于manage.py调用中。 例如,当我像这样扩展入口点时: ENTRYPOINT python3 […]

Docker镜像仅出现在ID中

我创build并运行docker集装箱。 docker image ls显示以下内容 REPOSITORY TAG IMAGE ID CREATED SIZE model_cnn3_4 trained_linux c29d652864b3 About an hour ago 3.37GB <none> <none> 72fde1eacaff 4 hours ago 3.37GB <none> <none> b1c12b6f4603 21 hours ago 3.37GB <none> <none> 4815f2e0588e 22 hours ago 3.37GB <none> <none> b05ec80bf7ae 24 hours ago 3.37GB model_cnn3_6 latest c266efd55148 27 hours ago 3.35GB model_cnn3_4 latest […]