Как запустить neo4j и флеш-веб-приложение из одного контейнера Docker - PullRequest
0 голосов
/ 26 апреля 2019

Я хочу запустить все приложение из одного док-контейнера, приложение состоит из трех компонентов. 1. База данных neo4j, которая должна быть доступна через локальный порт, скажем, болт порт 7687 2. приложение фляги, которое должно получить доступ к базе данных и результатам или выводу того же самого через порт localhost скажем 5000 3. страница веб-приложения index.html, которая выступает в качестве внешнего интерфейса приложения для колб. это позволит получить доступ к приложению с колбой через порт 5000.

Мне нужны первые два копонента для запуска из одного контейнера. я получил содержимое колбы, но не смог запустить оба.

Я использую версию сообщества neo4j и #not образ neo4j. для того, чтобы запустить то же самое, мы должны запустить neo4j из файла neo4j-community / bin

файл докера указан ниже

ОТ питона: 3,7

ТОМ ./:app/ RUN apt-get update -y RUN apt-get install -y python-pip python-dev build-essential

КОПИЯ. / Приложение /

WORKDIR / приложение RUN cd neo4j-community-3.5.3 / bin / CMD ["neo4j start"] RUN cd ../../ RUN cd flask_jan_24 / RUN pip install -r needs.txt

CMD ["flask_jan_24 / app_flask.py"] ЭКСПОЗИЦИЯ 5000

1 Ответ

0 голосов
/ 26 апреля 2019

Проблема в том, что вы фактически запустили Neo4j в операторе RUN (который является частью процесса сборки).

На самом деле у вас должен быть сценарий оболочки, который должен запускать все необходимые службы (например, neo4j или что-то еще) в фоновом режиме, а затем в конце вы должны запустить само приложение фляги.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...