NextJS и Страпи докеризованы

#docker #next.js #strapi

Вопрос:

В настоящее время я борюсь с получением NextJS-приложения в сочетании с приложением Strapi в Docker.

Мой проект строится именно так:

 /projekt  /strapi  ...  Dockerfile  /nextjs  ...  Dockerfile docker-compose.yml  

В конце концов — по крайней мере, я думаю, что я прав в этом — я хочу, чтобы мое приложение nextjs, созданное докером, было создано после запуска приложения strapi и доступно для запроса. Однако, похоже, что он не ждет достаточно долго и терпит неудачу, потому что приложение strapi доступно недостаточно скоро.

Я также довольно новичок в docker-compose и также был бы благодарен за решение, которое может не работать с docker-compose.yml (пока), но с отдельными шагами, которые я могу выполнить в скрипте «сборка»для создания моего nextjs-приложения.

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

1. Было бы очень полезно увидеть ваш docker-compose.yml и точную ошибку, которую вы получаете при создании контейнера nextjs. В противном случае возникает слишком много различных проблем, из-за которых может показаться, что контейнер strapi будет доступен недостаточно скоро.

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

Ответ №1:

Было бы действительно полезно включить сюда вашу докер-композицию.

Но в случае, если вы еще не пробовали: используйте depends_on в файле docker-compose, чтобы сообщить приложению nextjs, что запуск первой зависит от другой службы.

Подобный этому:

 version: "2" services:  web:  build: .  ports:  - "80:8000"  depends_on:  - "db"  command: ["./wait-for-it.sh", "db:5432", "--", "python", "app.py"]  db:  image: postgres