我正在使用以下docker compose文件进行influxdb设置:
version: '3'
services:
influxdb:
image: influxdb:latest
container_name: influxdb2.0
ports:
- "8083:8083"
- "8086:8086"
volumes:
- ./influxdb/data:/var/lib/influxdb2:rw
- /etc/letsencrypt/live/MY.DOMAIN/fullchain.pem:/etc/ssl/fullchain.pem
- /etc/letsencrypt/live/MY.DOMAIN/privkey.pem:/etc/ssl/privkey.pem
environment:
- INFLUXDB_HTTP_HTTPS_ENABLED=true
- INFLUXDB_HTTP_HTTPS_CERTIFICATE=/etc/ssl/fullchain.pem
- INFLUXDB_HTTP_HTTPS_PRIVATE_KEY=/etc/ssl/privkey.pem
- INFLUXDB_HTTP_LOG_ENABLED=true
但是,当我连接到influxdb时,https没有启用。我使用的证书与我在nginx网站上使用的证书相同(我的.DOMAIN运行在同一台机器上),其中证书按预期工作。docker logs influxdb2.0 | grep http
给我看看那些线条
2023-09-28T10:19:06.570793587Z info found existing boltdb file, skipping setup wrapper {"system": "docker", "bolt_path": "/var/lib/influxdb2/influxd.bolt"}
2023-09-28T10:19:06.607712579Z info found existing boltdb file, skipping setup wrapper {"system": "docker", "bolt_path": "/var/lib/influxdb2/influxd.bolt"}
ts=2023-09-28T10:19:06.726261Z lvl=info msg=Listening log_id=0kYpd4MW000 service=tcp-listener transport=http addr=:8086 port=8086
在这种情况下,transport=http
应该是transport=https
吗?我在influxdb日志中没有发现任何关于http的信息/错误/等。我应该为我的influxdb容器创建一个单独的证书吗?
1条答案
按热度按时间x3naxklr1#
我认为你只是使用了一个无效的配置。查看current documentation,看起来您需要设置
tls-cert
和tls-key
选项。使用此配置:
当我
docker compose up
堆栈时,我看到以下输出:我可以通过运行
curl -k https://localhost:8086
来确认influxdb正在使用TLS: