Перейти к содержанию

Дополнительная информация#

В данном разделе приводится следующая дополнительная информация:

Команды Docker#

Показать контейнеры#

Чтобы показать список запущенных Docker-контейнеров, используйте команду:

docker ps

Чтобы показать все имеющиеся Docker-контейнеры, используйте команду:

docker ps -a 

Копировать файлы в контейнер#

Можно переносить файлы в контейнер. Используйте команду docker cp для копирования файла в контейнер.

docker cp <file_location> <container_name>:<folder_inside_container>

Вход в контейнер#

Можно входить в отдельные контейнеры с помощью следующей команды:

docker exec -it <container_name> bash

Для выхода из контейнера используйте следующую команду:

exit

Имена образов#

Можно увидеть все имена образов с помощью команды

docker images

Удаление образа#

Если требуется удаление образа:

  • запустите команду docker images
  • найдите требуемый образ, например dockerhub.visionlabs.ru/luna/luna-image-store
  • скопируйте соответствующий ID образа из IMAGE ID, например, "61860d036d8c"
  • укажите его в команде удаления:
docker rmi -f 61860d036d8c

Удалите все существующие образы:

docker rmi -f $(docker images -q)

Остановка контейнера#

Контейнер можно остановить с помощью следующей команды:

docker stop <container_name>

Остановить все контейнеры:

docker stop $(docker ps -a -q)

Удаление контейнера#

Если необходимо удалить контейнер:

  • запустите команду "docker ps"
  • остановите контейнер (см. Остановка контейнера)
  • найдите требуемый образ, например: dockerhub.visionlabs.ru/luna/luna-image-store
  • скопируйте соответствующий ID контейнера из столбца CONTAINER ID, например, "23f555be8f3a"
  • укажите его в команде удаления:
docker container rm -f 23f555be8f3a

Удалить все контейнеры:

docker container rm -f $(docker container ls -aq)

Проверка логов сервисов#

Чтобы показать логи сервиса, используйте команду:

docker logs <container_name>

Запись логов на сервер#

Чтобы включить сохранение логов на сервер, необходимо:

  • создать директории для логов на сервере;
  • активировать запись логов и задать расположение хранения логов внутри контейнеров сервисов LP;
  • настроить синхронизацию директорий логов в контейнере с логами на сервере с помощью аргумента volume при старте каждого контейнера.

Создание директории логов#

Ниже приведены примеры команд для создания директорий для хранения логов и присвоения им прав для всех сервисов LUNA PLATFORM.

mkdir -p /tmp/logs/luna-vector-search-module /tmp/logs/python-matcher-proxy
chown -R 1001:0 /tmp/logs/luna-vector-search-module /tmp/logs/python-matcher-proxy

Активация записи логов#

Для активации записи логов в файл необходимо задать настройки log_to_file и folder_with_logs в секции LUNA_VECTOR_SEARCH_MODULE_LOGGER настроек LVSM.

Автоматический способ

Для обновления настроек ведения логов можно использовать файл настроек logging.json, предоставленный в комплекте поставки.

Обновите настройки записи логов с помощью утилиты Storages.

docker run \
--rm \
--network=host \
-v /var/lib/luna/lvsm-current/example-docker/configs/logging.json:/srv/logging.json \
dockerhub.visionlabs.ru/luna/storages:v.0.116.0 \
bash -c "luna_prepare load_dump \
    --dump-file=/srv/logging.json"

Ручной способ

Перейдите в интерфейс сервиса Configurator (127.0.0.1:5070) и задайте путь расположения логов в контейнере в параметре folder_with_logs для всех сервисов, чьи логи необходимо сохранить. Например, можно использовать путь /srv/logs.

Установите параметр log_to_file как true чтобы активировать запись логов в файл.

Монтирование директорий с логами при старте сервисов#

Директория с логами монтируется с помощью следующего аргумента при старте контейнера:

-v <server_logs_folder>:<container_logs_folder> \

где <server_logs_folder> директория, созданная на этапе создания директории логов, а <container_logs_folder> директория, созданная на этапе активации записи логов.