gpt4 book ai didi

基于 Docker 的 graylog 权限

转载 作者:行者123 更新时间:2023-12-05 06:27:25 25 4
gpt4 key购买 nike

我有以下 docker-compose.yml(略有改动,但从 here 复制):

version: '2'
services:
mongodb:
image: mongo:3
volumes:
- /storage/mongo_data:/data/db
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.6.1
volumes:
- /storage/es_data:/usr/share/elasticsearch/data
environment:
- http.host=0.0.0.0
- transport.host=localhost
- network.host=0.0.0.0
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
mem_limit: 1g
graylog:
image: graylog/graylog:3.0
volumes:
- /storage/graylog_journal:/usr/share/graylog/data/journal
environment:
- GRAYLOG_PASSWORD_SECRET=somepasswordpepper
- GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918
- GRAYLOG_HTTP_EXTERNAL_URI=http://127.0.0.1:9000/
links:
- mongodb:mongo
- elasticsearch
depends_on:
- mongodb
- elasticsearch
volumes:
mongo_data:
driver: local
es_data:
driver: local
graylog_journal:
driver: local

问题是当我用 docker-compose 运行它时它失败了,因为 graylogelasticsearch 服务都没有访问权限分别到 /storage/graylog/storage/elasticsearch。我需要改变的是:

  • chmod 1000:1000 -Rv/storage/elasticsearch
  • chmod 1100:1100 -Rv/storage/graylog

在主机上。

所以出现两个问题:

  • 这是为什么?
  • 如何优雅的处理?

最佳答案

Elasticsearch 和 Graylog 都不会在其容器内以 root 身份运行。

如果您将主机上的文件系统挂载到容器中,这就是他们的用户/组需要访问主机上文件系统的原因。

关于基于 Docker 的 graylog 权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55333322/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com