Как запустить сценарии схемы после запуска couchbase через docker compose?

#docker-compose #couchbase

Вопрос:

У меня есть сценарий схемы /data/cb-create.sh , который я сделал доступным на томе контейнера. Когда я запускаюсь docker-compose up , мой сервер не инициализируется во время command выполнения. Таким образом, эти команды завершаются неудачно, потому что сервер еще не запущен. Я не вижу строки Starting Couchbase Server -- Web UI available at http://<ip>:8091 журнала при запуске сценария .sh для инициализации схемы. Это мой файл docker compose. Как я могу правильно его упорядочить?

 version: '3'

services:
 couchbase:
    image: couchbase:community-6.0.0
    deploy:
      replicas: 1
    ports:
      - 8091:8091
      - 8092:8092
      - 8093:8093
      - 8094:8094
      - 11210:11210
    volumes:
      - ./:/data

    command: /bin/bash -c "/data/cb-create.sh"
    container_name: couchbase
 

volumes:
 kafka-data:

 

Ответ №1:

Во-первых: вы должны выбрать либо точку входа, либо инструкцию команды. Я думаю, что один из вариантов-написать небольшой скрипт bash, в котором вы приведете эти команды в порядок. Затем в команде, которую вы укажете, запустите этот сценарий bash.

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

1. У меня уже есть command раздел в моем файле docker-compose, в котором я вызываю это cb-создание. сценарий «ш-баш».

2. У вас не может быть точки входа и команды. Так что все, что находится в точке входа, должно быть и в этом сценарии bash.