使用 docker compose v2 在 docker 容器中设置 pgadmin4 的日志级别

问题描述 投票:0回答:1

我只是想增加 docker-compose.yaml 文件中 pgadmin4 服务的日志级别。但到目前为止我所尝试的一切似乎都不起作用。顺便说一句,我有 Docker Compose 版本

v2.12.1

这是一个最小的代码示例:

docker-compose.yaml

version: "3.8"

services:
  db:
    image: postgres:15-alpine
    container_name: db
    restart: always
    env_file:
      - .env
    volumes:
      - db-data:/var/lib/postgresql/data
    ports:
      - "5432:5432"
    environment:
      - POSTGRES_DB=${DB_NAME}
      - POSTGRES_USER=${DB_USER}
      - POSTGRES_PASSWORD=${DB_PASS}

  pgadmin:
    image: dpage/pgadmin4
    container_name: pgadmin
    env_file:
      - .env
    volumes:
      - pgadmin-data:/var/lib/pgadmin
    ports:
      - "5050:80"
    environment:
      - PGADMIN_DEFAULT_EMAIL=${PGADMIN_DEFAULT_EMAIL}
      - PGADMIN_DEFAULT_PASSWORD=${PGADMIN_DEFAULT_PASSWORD}
      - PGADMIN_CONFIG_CONSOLE_LOG_LEVEL=${PGADMIN_CONFIG_CONSOLE_LOG_LEVEL}
    depends_on:
      - db
#    logging:
#      driver: none

volumes:
  db-data:
  pgadmin-data:

.env

DB_HOST=db
DB_NAME=db_name
DB_USER=db_user
DB_PASS=db_pass
[email protected]
PGADMIN_DEFAULT_PASSWORD=db_pass
PGADMIN_CONFIG_CONSOLE_LOG_LEVEL=40

但是

PGADMIN_CONFIG_CONSOLE_LOG_LEVEL
环境变量似乎没有任何效果。当我使用
docker compose -f docker-compose.yaml up
启动容器并在浏览器中打开 pgadmin 页面 (http://localhost:5050/) 时,我从 pgadmin 服务获取所有日志记录。

任何人都可以帮助将日志级别提高到仅显示

ERROR
及以上吗?非常感谢您的帮助!

postgresql docker docker-compose pgadmin-4
1个回答
0
投票

我认为多余的日志来自

gunicorn
而不是
pgadmin
本身。

要限制它们,您可以将以下内容添加到 env 文件中,然后 docker 根据您的设置自行组合。

# in your env file
GUNICORN_ACCESS_LOGFILE="/dev/null"
# your yaml file
GUNICORN_ACCESS_LOGFILE=${GUNICORN_ACCESS_LOGFILE}

对 github 问题的评论可能有助于阐明更多信息

https://github.com/docker/compose/issues/8578#issuecomment-945228061

© www.soinside.com 2019 - 2024. All rights reserved.