Я пытаюсь i) устранить неполадки с простой onyx-kafka задание не писать в тему. Более подробная информация приведена здесь. И вы можете попробовать это в этом примере проекта а>. Я думаю, причина в том, что есть только один узел kafka.
Поэтому я попытался ii) запустить kafka confluentinc/cp-kafka:3.3.1
(с zookeeper confluentinc/cp-zookeeper:3.3.1
) с запущенным докером (17.09.0-ce, сборка afdb6d4) в режиме роя. Но потом я получаю эту ошибку.
Warning: space is running low in /dev/shm (shm) threshold=167,772,160 usable=58,716,160
A) С помощью docker compose я мог просто настроить подключенный /dev/shm
диск так, чтобы он имел большую емкость с параметром конфигурации shm_size: 1G
(см. здесь).
Есть ли эквивалент для docker swarm? Мне просто нужно контролировать размер тома диска. Но я не вижу такой опции в конфигурации deploy
docker compose (см. здесь а>). И docker service --mount
опция, похоже, не решает проблему. Здесь есть варианты?
B) Я не совсем понимаю монтирование тома Memory
описан здесь. Так что не знаю, рабочий ли это вариант.
C) Благодаря Эндрю Малхолланду (@itwasntandy) с канала devops-engineers
Slack я могу подделать его, передав --mount type=tmpfs,dst=/dev/shm,tmpfs-size=768000000
в качестве параметров вызова docker service create ...
(см. здесь).
Но в официальной документации сказано, что параметр tmpfs — это не поддерживается для docker stack deploy
. Этот параметр применяется только к конфигурации службы docker compose. Это не относится к режиму роя докеров.
Сводка. Итак, есть ли способ добавить эту опцию в мой существующий файл docker-compose.yml в конфигурации роя?
Я бы хотел запустить docker stack deploy --compose-file docker-compose.yml my-app
. Подробности здесь. Пример проекта находится здесь. В конечном итоге я хочу:
- i) запустить стек докеров со службой, в которой onyx-kafka записывает в тему (см. здесь). И для этого, я думаю, мне нужно...
- ii) запустить докер (17.09.0-ce, сборка afdb6d4) в режиме swarm с образами kafka
confluentinc/cp-kafka:3.3.1
(с zookeeperconfluentinc/cp-zookeeper:3.3.1
). Но я столкнулся с этой проблемой ошибки памяти.