Один Docker -контейнер запускается вместо другого. Docker -compose - PullRequest
0 голосов
/ 20 января 2020

Docker -compose.yml:

version: '3'
services:
   psql:
    container_name: docker_db
    build: database/
    image: andrey1981spb/docker_db

 webapp:
     container_name: docker_test
     build: src/
    image: andrey1981spb/docker_test
    depends_on:
      - psql

Dockerfile для psql:

FROM postgres:latest

ENV POSTGRES_DB_PORT : "5432"
ENV POSTGRES_USER dreamwhite
ENV POSTGRES_PASSWORD Password2020#
ENV POSTGRES_DB test_psql

EXPOSE 5432

Dockerfile для wewapp:

FROM tomcat:9-jre8-alpine

ENV PATH_TOMCAT_USERS /usr/local/tomcat/conf/
ENV PATH_MANAGER /usr/local/tomcat/webapps/manager/
ADD config/tomcat-users.xml  /usr/local/tomcat/conf/tomcat-users.xml
ADD config/context.xml /usr/local/tomcat/webapps/manager/META-INF/context.xml
ADD test.war /usr/local/tomcat/webapps/ROOT.war
EXPOSE 8080
CMD ["catalina.sh","run"]

Все 2 контейнеры работают успешно. Но контейнер docker_db содержит данные из docker_test. В частности, я вижу, что docker проверяет docker_db. Он возвращает переменные окружения для docker_test. А на сервер загружены переменные окружения и другие настройки для docker_test (вместо docker_db)

Структура проекта:

Project-structure

1 Ответ

0 голосов
/ 20 января 2020

Я думаю, что оба изображения создаются из одного и того же dockerfile, потому что вы не указали dockerile в службах. попробуйте это

version: '3'
services:
   psql:
    container_name: docker_db
    build: 
      context: .
      dockerfile: ./database/Dockerfile
    image: andrey1981spb/docker_db

 webapp:
     container_name: docker_test
     build: 
      context: .
      dockerfile: ./src/Dockerfile
    image: andrey1981spb/docker_test
    depends_on:
      - psql

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