У меня проблемы с запуском набора тестов в приложении Dockerize Django с использованием Travis CI. Я выполнил тестовый набор локально без каких-либо проблем, т.е. после использования:
docker-compose up --build -d
docker-compose run django --no-deps python manage.py test polls
Это мой репозиторий github: https://github.com/bgreatfit/Docker_django
Все работает (набор тестов) отлично на моей локальной машине, которая содержит Dockerized Django Application. В то время как в Трэвисе создание сборки успешно, но набор тестов не запускается. Это последняя строка вывода на Travis:
docker_django-mysql | Version: '5.6.43' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server (GPL)
Это мой travis url: https://travis -ci.org / bgreatfit / Docker_django
Это мой файл travis.yaml
sudo: required
services:
- docker
before_install:
- docker-compose up -d
- docker ps
script:
- docker-compose run django python manage.py test polls
Это мой docker-compose файл
version: "3.1"
services:
django:
build: ./app
container_name: ${PROJECT_NAME}-django
command: gunicorn first_project.wsgi:application --bind 0.0.0.0:8000
volumes:
- ./app:/app
- static_volume:/app/static
expose:
- 8000
depends_on:
- mysql
mysql:
image: mysql:5.6
container_name: ${PROJECT_NAME}-mysql
volumes:
- db-data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=docker_root
- MYSQL_DATABASE=docker_django_db
- MYSQL_USER=dbuser
- MYSQL_PASSWORD=dbpw
ports:
- "8306:3306"
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: ${PROJECT_NAME}-phpmyadmin
environment:
- PMA_ARBITRARY=1
restart: always
ports:
- 8082:80
volumes:
- /session
nginx:
build: ./nginx
container_name: ${PROJECT_NAME}-nginx
volumes:
- static_volume:/app/static
ports:
- 1337:80
depends_on:
- django
volumes:
db-data:
static_volume:
Мой файл Docker:
FROM python:3.6
# set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# set work directory
WORKDIR /app
# Install python mysql client
RUN apt-get update \
&& apt-get -y install libmysqlclient-dev \
&& apt-get clean; rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*
# install dependencies
COPY requirements.txt /app/
RUN pip install -r requirements.txt
# copy project
# copy entrypoint.sh
COPY ./entrypoint.sh /usr/src/app/entrypoint.sh
# copy project
COPY. /app/
# run entrypoint.sh
RUN ["chmod","+x","/app/entrypoint.sh"]
Я ожидаю, что после создания сборки на Travis я должен увидеть вывод набора тестов: например, Нет тестов и если он успешен