草庐IT

docker - 容器未与 docker-compose 版本 2 链接

我有一个从版本1升级到版本2的docker-compose文件。它设置了一个带有firefox节点的简单Selenium集线器。当我将它设置为版本1时,它可以正常启动。当我使用版本2进行设置时,ff容器返回"NotlinkedwitharunningHubcontainer"并退出。根据我的研究和理解,容器之间的链接是否会受到影响。有解决办法吗??我错过了什么吗??version:'2'services:hub:container_name:hubimage:selenium/hubports:-"8080:4444"#HOST:CONTAINERexpose:-"4444"ff:co

proxy - 如何使环境变量可用于来自 docker-compose 的 Docker RUN 命令?

我有一个Dockerised应用程序,我想在代理和非代理主机环境中运行。我试图通过将普通环境变量(例如http_proxy)复制到容器中来解决此问题,当且仅当它们存在于主机中时。我可以通过运行到达那里的90%set|grep-i_proxy=>proxies.env在顶级脚本中,然后在我的docker-compose.yml中:myserver:build:./myserverenv_file:-proxies.env这会将主机的环境代理变量(如果有)复制到服务器容器中,并且它的工作原理是这些变量在容器运行时可用,换句话说,在DockerfileCMD或ENTRYPOINT执行的阶段可

docker-compose up -d <名称>;没有这样的服务 : <name>

我已经使用我的dockerfile通过以下命令构建了一个镜像:dockerbuild–t:0.2.34.然后我尝试使用我的docker-compose.yml:strat:container_name:image::0.2.34restart:alwayscommand:bash-lc'blah'打开我的容器:docker-composeup-d这给了我以下“错误”:Nosuchservice: 最佳答案 你应该运行:docker-composeup-dstrat来自documentation:Usage:up[options][S

mysql - 使用 docker-compose 链接 django 和 mysql 容器

我一直在关注docker-compose教程here(链接django和postgres容器)。尽管我能够完成本教程,但我无法继续重复相同的教程使用mysql容器。以下是我的dockerfile和docker-compose.yml`db:image:mysqlweb:build:.command:pythonmanage.pyrunserver0.0.0.0:8000volumes:-.:/codeports:-"8000:8000"links:-db:db`dockerfileFROMpython:2.7RUNmkdir/codeWORKDIR/codeRUNpipinstallm

docker-compose:为多个服务使用多个 Dockerfile

我正在使用docker-compose,我想为不同服务的构建步骤使用不同的Dockerfile。docs似乎建议将不同的Dockerfile放在不同的目录中,但我希望它们都在同一个目录中(并且可能使用以下约定可以区分:Dockerfile.postgres、Dockerfile.main...)。这可能吗?编辑:我的场景包含这个docker-compose文件:main:build:.volumes:-.:/codeenvironment:-DEBUG=truepostgresdb:extends:file:docker-compose.ymlservice:mainbuild:uti

docker - 使用 docker-compose 指定 sysctl 值

我正在尝试设置一些sysctl值。基本上如下sysctl-w\net.ipv4.tcp_keepalive_time=300\net.ipv4.tcp_keepalive_intvl=60\net.ipv4.tcp_keepalive_probes=9在docker容器中。直接登录容器并执行命令时,出现以下错误sysctl:cannotstat/proc/sys/net/ipv4/tcp_keepalive_time:Nosuchfileordirectorysysctl:cannotstat/proc/sys/net/ipv4/tcp_keepalive_intvl:Nosuchfi

docker - 在 docker-compose 中挂载一个卷。它是如何完成的?

如果我在控制台中执行这个cmd:dockerrun-it--rm--linkrabbit--linkelasticsearch-v"$PWD"/logstash:/config-dirlogstashlogstash-f/config-dir/logstash.conf运行良好。在./logstash文件夹中有一个logstash.conf。但是现在我试图放入一个docker-compose并且同样不起作用:logstash:image:logstash:latestlinks:-"elasticsearch:elasticsearch"-"rabbit:rabbit"volumes:

docker - 为什么redis不能访问docker-compose中的磁盘?

根据docker文档,我尝试了一个非常简单的带有redis的python应用程序的第一次测试。这会在一段时间后崩溃,因为redis无法持久化。我不知道为什么。你可以在这里找到公共(public)repo:Githubrepo我当前的docker-compose.yml是:web:build:.ports:-"5000:5000"volumes:-.:/codelinks:-redisredis:image:redis:latestvolumes:-./data:/data编辑:这是日志的摘录:1:M09Feb10:51:15.130#Backgroundsavingerror1:M09

python - docker-compose 不在 Python 应用程序中打印标准输出

在由DockerCompose管理的Docker容器内运行的Python应用程序中使用print()语句时,仅记录sys.stderr输出。没有看到原版print()语句,因此:print("Hello?Anyonethere?")...永远不会出现在常规日志中:(您可以在我的应用程序中看到其他库显式打印的其他日志,但没有我自己的调用。)如何避免我的print()调用被忽略? 最佳答案 默认情况下,Python缓冲输出到sys.stdout.有几个选项:1.调用显式flush重构原始打印语句以包含flush=True关键字,例如:p

docker - 如何使用 Docker Compose v2 使卷永久化

我知道其他人也有类似的问题,但它使用v2compose文件格式,我没有找到任何相关信息。我想制作一个非常简单的测试应用程序来使用MemSQL,但是在docker-composedown之后我无法让卷不被删除。如果我对DockerDocs的理解正确,那么不应该在没有明确告知的情况下删除卷。一切似乎都与docker-composeup一起工作,但是在下降然后再次上升之后,所有数据都会从数据库中删除。作为一种好的做法,我使用单独的memsqldata服务作为单独的数据层。这是我的docker-compose.yml:version:'2'services:app:build:.links:-