docker run --restart on-failure -p 18630:18630 -d --name streamsets-dc streamsets/datacollector dc
По умолчанию логин: admin / admin.
sdc.properties
также можно переопределить во время выполнения, указав их как переменные окружения, предварительно добавив префикс SDC_CONFhttp.port
будет задан как SDC_CONF_HTTP_PORT=12345
Например, чтобы запустить с пользовательским sdc.properties файлом, локальным путем для хранения пайплайнов и статическим отображением порта UI по умолчанию, вы можете использовать следующее:
docker run -v $PWD/sdc.properties:/etc/sdc/sdc.properties:ro -v $PWD/sdc-data:/data:rw -p 18630:18630 -d streamsets/datacollector dc
Чтобы создать специализированный том данных для хранения пайплайнов, выполните следующую команду:``` docker volume create --name sdc-data
Затем вы можете использовать аргумент -v (том) для примонтирования его при запуске SDC.
docker run -v sdc-data:/data -P -d streamsets/datacollector dc
**Примечание:** Существует два различных метода управления данными в Docker. Вышеуказанный метод использует *тома данных*, которые пусты при создании. Вы также можете использовать *контейнеры данных*, которые производны от образа. Эти контейнеры полезны, когда вы хотите изменять и сохранять путь, начиная с существующих файлов базового контейнера, например для файлов конфигурации. Мы будем использовать оба метода в примере ниже. Подробная документация доступна по ссылке [Управление данными в контейнерах](https://docs.docker.com/engine/tutorials/dockervolumes/).**Обратите внимание:** В Docker существует два разных способа управления данными. Приведённый выше том данных создается пустым. Также можно использовать контейнер данных, который производится из образа. Эти функции полезны, когда вы хотите изменять и сохранять пути к существующим файлам, так как файлы конфигурации, начиная с базового контейнера. В следующем примере мы будем использовать оба этих метода. Для получения дополнительной информации о работе с данными в контейнерах обратитесь к соответствующей документации.
# Предварительная настройка Data Collector#### Вариант 1 - Объемы (Рекомендуется)
Сначала создаем контейнер данных для нашей конфигурации. Наш будет называться `sdc-conf`
```shell
docker create -v /etc/sdc --name sdc-conf streamsets/datacollector
docker run --rm -it --volumes-from sdc-conf ubuntu bash
Совет: Вы можете заменить ubuntu
на вашу любимую базовую image. Это всего лишь временный контейнер для редактирования базовых конфигурационных файлов.
Редактируйте конфигурацию SDC по своему усмотрению, изменяя файлы в /etc/sdc
Через изменение файлов в /etc/sdc
вы можете настроить SDC по своему усмотрению
Вы можете выбрать создание отдельных контейнеров данных с помощью вышеуказанного процесса для $SDC_DATA
(/data
) и других мест, или вы можете добавить все объемы в один контейнер. Для нескольких объемов в одном контейнере данных вы можете использовать следующий синтаксис:
docker create -v /etc/sdc -v /data -v --name sdc-volumes streamsets/datacollector
Если вам легче редактировать конфигурационные файлы локально, вы можете использовать команду docker cp
для копирования конфигурационных файлов туда-сюда из контейнера данных, вместо запуска временного контейнера.
Чтобы установить stage libs с помощью CLI или Package Manager UI, вам потребуется создать объем для директории stage libs. Также рекомендуется использовать объем для директории данных как минимум.
docker volume create --name sdc-stagelibs
(Если вы не создали контейнер данных для /data
, выполните команду ниже)
docker volume create --name sdc-data
```Объем затем должен быть подключен к правильной директории при запуске контейнера. Пример ниже относится к версии Data Collector 3.9.1. Затем при запуске контейнера необходимо смонтировать том в правильную директорию. Пример ниже применим для версии Data Collector 3.9.1.
```shell
docker run --name sdc -d -v sdc-stagelibs:/opt/streamsets-datacollector-3.9.1/streamsets-libs -v sdc-data:/data -P streamsets/datacollector dc -verbose
Чтобы получить список доступных libs, можно выполнить:
docker run --rm streamsets/datacollector:3.9.1 stagelibs -list
Например, чтобы установить JDBC lib в том sdc-stagelibs, который вы создали выше, можно выполнить:
docker run --rm -v sdc-stagelibs:/opt/streamsets-datacollector-3.9.1/streamsets-libs streamsets/datacollector:3.9.1 stagelibs -install=streamsets-datacollector-jdbc-lib
Одним из недостатков первого метода является то, что мы не можем коммитировать данные в томе и распространять их через Docker-регистр. Вместо этого нам необходимо создать том, сделать резервную копию данных, а затем восстановить данные, если нам нужно заново создать или переместить контейнер на другую машину.
Второй вариант позволяет нам вносить изменения в исходный базовый образ, создавая новый, который можно отправить в Docker-регистр и легко распространять.
Самый простой и рекомендуемый способ — это просто создать свой собственный Dockerfile с официальным образом streamsets/datacollector в качестве базового! Это обеспечивает повторяемый процесс для построения производных образов.Например, этот производный Dockerfile:
FROM streamsets/datacollector:3.9.1
# Мой настроенный sdc.properties
COPY sdc.properties /etc/sdc/sdc.properties
docker build -t mycompany/datacollector:3.9.1-abc .
docker push mycompany/datacollector:3.9.1abc
Теперь я создал новый образ с кастомизированным файлом sdc.properties и могу легко распространять его из Docker-регистра.
Вы также можете запустить стандартный контейнер, изменять его во время работы и использовать команду docker commit
, но это не рекомендуется.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )