标签: docker-compose

为什么对链接的Docker容器执行“ uwsgi_pass”时,nginx为什么返回502?

我正在使用Docker Compose来编排由Django webapp和nginx反向代理组成的多容器应用程序。

我盯着一个简单的测试用例,但是我已经遇到了障碍。该应用程序通过网络套接字()将所有请求传递/给Django应用程序。uwsgi_passfrontend:8000

但是,在启动应用程序后docker-compose up没有看到错误消息之后,任何/在控制台中产生以下错误消息的请求: gateway_1 | 2016/01/11 15:45:12 [error] 8#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.99.1, server: localhost, request: "GET / HTTP/1.1", upstream: "uwsgi://172.17.0.2:8000", host: "192.168.99.100:8000"

我的问题如下: 可能是什么问题?用替换uwsgi_pass frontend;location块的content_by_lua_file path/to/file.lua;行为符合预期,因此我怀疑容器链接上的uWSGI有问题,但是我对接下来的查找感到迷惑。

以下是相关文件:

Docker Compose:30,000英尺高的视图

docker-compose.yml文件如下:

postgres:
    image: mystuff/app.testdb:latest
    expose:
        - "5432"
frontend:
    image: mystuff/app.frontend:latest
    expose:
        - "8000"
    environment:
        APP_DBCONN: "user=xxx dbname=xxx port=5432 host=postgres …
Run Code Online (Sandbox Code Playgroud)

django nginx uwsgi docker docker-compose

0
推荐指数
1
解决办法
1054
查看次数

Jhipster Docker构成冲突

我试图使用jhipster生成一套微服务架构的应用程序.在jhipster-devbox中,我执行以下操作:

$ mkdir mygateway && cd mygateway

$ yo jhipster - 选择网关,回答所有问题

$ ./gradlew bootRepackage -Pdev buildDocker 我想确保在我尝试将其移动到AWS之前全部在本地运行

$ cd.. && mkdir myapi && && cd myapi

$ yo jhipster - 选择微服务应用程序(与网关相同的包名称...不知道这是否重要,但不是这个问题)

$ ./gradlew bootRepackage -Pdev buildDocker

$ cd .. && mkdir docker-compose && cd docker-compose

$ yo jhipster:docker-compose (所有项目都成功运行到此点)

$ docker-compose up -d 收益:

错误:冲突.名称"/ jhipster-registry"已被容器a785f619b5dd985b3ff30a8ed6e41066795eb8b5e108d2549cd4a9d5dc27710a使用.您必须删除(或重命名)该容器才能重用该名称.

它会出现在"jhipster的注册表"可里面的gatewayapi我刚刚创建的应用程序......我试图评论他们离开的app.yml文件没有成功?

jhipster docker-compose

0
推荐指数
1
解决办法
397
查看次数

Logstash一开始就崩溃

如标题中所述,Logstash一旦启动便崩溃。
我正在通过Docker运行它。

这是我的输出:

logstash_1         | {:timestamp=>"2016-10-25T13:14:31.470000+0000", :message=>"Reading config file", :config_file=>"/etc/logstash/conf.d/logstash.conf", :level=>:debug, :file=>"logstash/config/loader.rb", :line=>"69", :method=>"local_config"}
logstash_1         | {:timestamp=>"2016-10-25T13:14:31.570000+0000", :message=>"Plugin not defined in namespace, checking for plugin file", :type=>"output", :name=>"stdout", :path=>"logstash/outputs/stdout", :level=>:debug, :file=>"logstash/plugin.rb", :line=>"86", :method=>"lookup"}
logstash_1         | {:timestamp=>"2016-10-25T13:14:31.584000+0000", :message=>"starting agent", :level=>:info, :file=>"logstash/agent.rb", :line=>"213", :method=>"execute"}
logstash_1         | {:timestamp=>"2016-10-25T13:14:31.585000+0000", :message=>"starting pipeline", :id=>"main", :level=>:info, :file=>"logstash/agent.rb", :line=>"487", :method=>"start_pipeline"}
logstash_1         | {:timestamp=>"2016-10-25T13:14:31.606000+0000", :message=>"Plugin not defined in namespace, checking for plugin file", :type=>"codec", :name=>"rubydebug", :path=>"logstash/codecs/rubydebug", :level=>:debug, :file=>"logstash/plugin.rb", :line=>"86", :method=>"lookup"}
logstash_1         | {:timestamp=>"2016-10-25T13:14:31.632000+0000", :message=>"config LogStash::Codecs::RubyDebug/@metadata = false", :level=>:debug, :file=>"logstash/config/mixin.rb", …
Run Code Online (Sandbox Code Playgroud)

crash logstash docker docker-compose

0
推荐指数
1
解决办法
1994
查看次数

无法在 docker-compose 中给定的端口上的浏览器中打开 localhost

我正在尝试使用 docker 和 docker-compose 构建并运行 django 应用程序。\ndocker-compose build example_appdocker-compose run example_app运行时没有错误,但是当我转到http://127.0.0.1:8000/页面未打开时,我只是在浏览器中收到“页面不可用”错误。\ nHere 是我的 Dockeffile、docker-compose.yml 和项目结构

\n

Dockerfile

\n
FROM python:3.9-buster\n\nRUN mkdir app\nWORKDIR /app\nCOPY ./requirements.txt /app/requirements.txt\nCOPY ./requirements_dev.txt /app/requirements_dev.txt\nRUN pip install --upgrade pip\nRUN pip install -r /app/requirements.txt\n
Run Code Online (Sandbox Code Playgroud)\n

docker-compose.yml

\n
version: '3'\n\nservices:\n  example_app:\n    image: example_app\n    build:\n      context: ../\n      dockerfile: ./docker/Dockerfile\n    command: bash -c "cd app_examples/drf_example && python manage.py runserver"\n    volumes:\n      - ..:/app\n    ports:\n      - 8000:8000\n
Run Code Online (Sandbox Code Playgroud)\n

项目结构:

\n
\xe2\x94\x80\xe2\x94\x80app\n\xe2\x94\x80\xe2\x94\x80app_examples/drf_example/\n  \xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80manage.py\n  \xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80api\n  \xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80drf_example\n\xe2\x94\x80\xe2\x94\x80requirements.txt\n\xe2\x94\x80\xe2\x94\x80requirements_dev.txt\n\xe2\x94\x80\xe2\x94\x80docker/\n  \xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80docker-compose.yml\n  \xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80Dockerfile\n
Run Code Online (Sandbox Code Playgroud)\n

python django containers docker docker-compose

0
推荐指数
1
解决办法
1596
查看次数

使用 docker-compose 在派生映像中创建的安装目录时出错

概括

\n

使用docker-compose,使用 Nginx 基础映像中存在的目标目录安装卷可以按预期工作。docker-compose up但是,当挂载目标是在派生映像中创建的子目录时,我收到错误。这是错误的要点:

\n
\n

将“newdir”安装到“/usr/share/nginx/html/newdir”处的rootfs导致:\ nmkdir newdir:只读文件系统:未知

\n
\n

我不明白为什么它似乎在尝试创建已经存在的目录( newdir )!

\n

细节

\n

完整错误如下:

\n
ERROR: for test_nginx_1  Cannot start service nginx: OCI runtime create failed: container_linux.go:380: starting container process caused: process_linux.go:545: container init caused: rootfs_linux.go:76: mounting "/home/user/test/newdir" to rootfs at "/usr/share/nginx/html/newdir"  caused: mkdir /var/lib/docker/overlay2/accdaa147d7825a7d2c71b68f76e0b8663d00f6e46fcfb5c0ec32ada8baf85af/merged/usr/share/nginx/html/newdir: read-only file system: unknown\n\nERROR: for nginx  Cannot start service nginx: OCI runtime create failed: container_linux.go:380: starting container process caused: process_linux.go:545: container init caused: rootfs_linux.go:76: mounting …
Run Code Online (Sandbox Code Playgroud)

docker docker-compose

0
推荐指数
1
解决办法
2901
查看次数

pymongo.errors.ServerSelectionTimeoutError:db:27017:超时,超时:30秒,

我正在尝试运行 Flask 和 MongoDb 应用程序并收到以下错误。这是我可以使用获取的日志sudo docker logs <container-name>

    self._select_servers_loop(
  File "/usr/local/lib/python3.10/site-packages/pymongo/topology.py", line 227, in _select_servers_loop
    raise ServerSelectionTimeoutError(
pymongo.errors.ServerSelectionTimeoutError: db:27017: timed out, Timeout: 30s, Topology Description: <TopologyDescription id: 626fc61ba785d70a66a1ea12, topology_type: Unknown, servers: [<ServerDescription ('db', 27017) server_type: Unknown, rtt: None, error=NetworkTimeout('db:27017: timed out')>]>
Run Code Online (Sandbox Code Playgroud)

当我尝试访问本地主机时,我在日志中收到上述错误。当我尝试在浏览器中访问本地主机时,我看到connection was reset错误,然后我看到生成了上述日志。

这是我的 app.py 文件

from flask_restful import Api, Resource
import os
from pymongo import MongoClient

app = Flask(__name__)
api = Api(app)


client = MongoClient("mongodb://db:27017", port=27017, directConnection=True)
db = client.aNewDB
UserNum = db["UserNum"]

UserNum.insert_one({
    'num_of_users':0 …
Run Code Online (Sandbox Code Playgroud)

python pymongo docker dockerfile docker-compose

0
推荐指数
1
解决办法
8440
查看次数

PySnmp 查询不适用于可到达的目标,但命令行“snmpget”成功

我需要一个可以监视 SNMP 代理的 SNMP 服务器。为此,我编写了一个基本的Python应用程序,并运行了一个SNMP代理(基于polinux/snmpd图像),在同一网络上,该代理具有固定的IP地址。当我从服务器容器运行 SNMP get 查询时,我得到了所需的 OIB,但是当我想使用 PySnmp 以编程方式执行相同操作时,它不起作用。我尝试了很多方法但没有成功。

你有什么主意吗?

我的泊坞窗撰写文件:

services:
  spm-health-service:
    build:
      context: .
      dockerfile: docker/Dockerfile
    restart: unless-stopped
    env_file:
      - .env
    ports:
      - "4500:4500"
    depends_on:
      - scs-server
      - network-device-identifier

  spm:
    image: polinux/snmpd
    restart: unless-stopped
    privileged: true
    ports:
      - "161:161/udp"
    volumes:
      - ./resources/snmpd-conf/snmpd.conf:/etc/snmp/snmpd.conf
      - ./resources/spm-mib/:/usr/local/share/snmp/mibs/
    networks:
      default:
        ipv4_address: 10.5.0.5

networks:
  default:
    driver: bridge
    ipam:
      config:
        - subnet: 10.5.0.0/16
          gateway: 10.5.0.1

Run Code Online (Sandbox Code Playgroud)

当我进入“spm-health-service”的bash shell时,我的命令和结果:

$ winpty docker exec -it 627 bash
root@627d241920e3:/app# snmpget -v2c -t 10 -c …
Run Code Online (Sandbox Code Playgroud)

python snmp mib pysnmp docker-compose

0
推荐指数
1
解决办法
2778
查看次数

Docker: exec /usr/local/openjdk-11/bin/java: exec 格式错误

图像 m2 在 MacBook 上运行良好。当我在 Ubuntu 上安装并运行它时出现错误。

命令;

docker pull mademustafa/postmage:latest
docker run -it mademustafa/postmage:latest
Run Code Online (Sandbox Code Playgroud)

错误;

WARNING: The requested image's platform (linux/arm64/v8) does not match the detected host platform (linux/amd64) and a specific platform was not requested
exec /usr/local/openjdk-11/bin/java: exec format error
Run Code Online (Sandbox Code Playgroud)

我是按照以下文档进行安装的;

https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04

https://ktor.io/docs/docker.html#build-run

(Ubuntu 20.04(LTS)x64)

docker dockerfile docker-compose ktor

0
推荐指数
1
解决办法
8316
查看次数

为什么我无法从 docker 容器访问 minio 控制台?

我想使用 minio 创建一个 docker 容器,并同时创建一个存储桶。当我尝试转到控制台 (localhost:9001) 时,出现错误。我的怎么了docker-compose

docker-compose.yaml

version: '3'
services:
  minio:
    image: minio/minio:latest
    container_name: minio
    ports:
      - 9000:9000
      - 9001:9001
    volumes:
      - "./data:/data"
      - "./config:/root/.minio"
    environment:
      MINIO_ACCESS_KEY: minio-access-key
      MINIO_SECRET_KEY: minio-secret-key
    command: server /data && server /minio-image/storage --console-address :9001
    networks:
      - minio-network
    restart: always
  create-bucket:
    image: minio/mc:latest
    container_name: create-post-bucket
    environment:
      MINIO_HOST: minio
      MINIO_ACCESS_KEY: minio-access-key
      MINIO_SECRET_KEY: minio-secret-key
    entrypoint: ["sh", "-c"]
    command: "mc mb local/post-bucket || true"
    depends_on:
      - minio
    networks:
      - minio-network
networks:
  minio-network:
Run Code Online (Sandbox Code Playgroud)

amazon-s3 docker docker-compose minio

0
推荐指数
1
解决办法
2162
查看次数

Docker Compose 失败:错误:外部管理环境

我使用的是 Windows 机器,并且已经安装了 wsl 以便能够使用 Docker 桌面。当然构建失败了,然后我在dockerfile中观察到了python3和pip3。所以我通过 wsl 安装了 ubuntu 和 debian,然后尝试运行该应用程序(docker-compose up)。它仍然失败并抛出以下错误:

\n
 ERROR [test 3/5] RUN pip3 install daff==1.3.46                                                                                                                           0.9s\n------\n > [test 3/5] RUN pip3 install daff==1.3.46:\n0.812 error: externally-managed-environment\n0.812\n0.812 \xc3\x97 This environment is externally managed\n0.812 \xe2\x95\xb0\xe2\x94\x80> To install Python packages system-wide, try apt install\n0.812     python3-xyz, where xyz is the package you are trying to\n0.812     install.\n0.812\n0.812     If you wish to install a non-Debian-packaged Python package,\n0.812     create a virtual environment using python3 -m venv path/to/venv.\n0.812     Then use path/to/venv/bin/python and path/to/venv/bin/pip. …
Run Code Online (Sandbox Code Playgroud)

docker docker-compose windows-subsystem-for-linux

0
推荐指数
1
解决办法
4941
查看次数