Я хочу синхронизировать файл конфигурации с контейнера на хост, где я ошибся?что мне делать?

#docker #trino

#docker #trino

Вопрос:

я запускаю :

 docker run -p 8080:8080 --name trino11  -v /data/dir1:/usr/lib/trino/etc  trinodb/trino
 

показать:

 root@yy:/data# docker run -p 8380:8080 --name trino000  -v /data/dir1:/usr/lib/trino/etc  trinodb/trino
  [[ ! -d /usr/lib/trino/etc ]]
  set  e
  grep -s -q node.id /usr/lib/trino/etc/node.properties
  NODE_ID_EXISTS=2
  set -e
  NODE_ID=
  [[ 2 != 0 ]]
  NODE_ID=-Dnode.id=374f76e5daef
  exec /usr/lib/trino/bin/launcher run -Dnode.id=374f76e5daef
ERROR: Config file is missing: /usr/lib/trino/etc/config.properties
 

если не требуется автоматическое копирование файла конфигурации из контейнера на хост-компьютер, я могу запустить

 docker run -p 8080:8080 --name trino trinodb/trino
 

из https://hub.docker.com/r/trinodb/trino

Ответ №1:

Конфигурация Trino должна быть смонтирована на /etc/trino

 -v /your/path:/etc/trino
 

Привязка к /usr/lib/trino/etc может запутать сценарий запуска.

Смотрите https://github.com/trinodb/trino/blob/master/core/docker/README.md для получения дополнительной информации.

Комментарии:

1. (base) root@DESKTOP-9TU3VS1:~# docker run -p 8080:8080 -it --name trino -v /data/dir1:/etc/trino trinodb/trino [[ ! -d /usr/lib/trino/etc ]] [[ -d /etc/trino ]] ln -s /etc/trino /usr/lib/trino/etc set e grep -s -q node.id /usr/lib/trino/etc/node.properties NODE_ID_EXISTS=2 set -e NODE_ID= [[ 2 != 0 ]] NODE_ID=-Dnode.id=7f2923bc8578 exec /usr/lib/trino/bin/launcher run -Dnode.id=7f2923bc8578 ERROR: Config file is missing: /etc/trino/config.properties

2. @chinayangyongyong может быть проще обсудить это #troubleshooting в сообществе Trino slack