У меня есть проект Django с базой данных Postgres. Я использую Gitlab CI для тестирования моего проекта с помощью Shell Runner.
Когда мои тома монтируются во время выполнения бегуна с помощью команды docker-compose up -d
, папка db
монтируется сPostgres i s принадлежит root
.
Я не могу понять, почему, поскольку другие файлы в моем контейнере также являются томами, но они принадлежат пользователю gitlab-runner
.
Так что мой CI не удался, потому что бегун не смог удалить папку build
. Я нашел решение с помощью mkdir -p db/coreApi
во время сборки, но я хочу знать причину этого.
Вот вывод файла моего бегуна.
А вот мои docker-compose.yml
файлы с томами.
version: '3'
services:
db:
image: 'postgres'
volumes:
- ./db/coreApi:/var/lib/postgresql/data
web:
restart: always
container_name: coreapi_web_container
build: .
depends_on:
- db
command: bash -c "python manage.py runserver 0.0.0.0:8000"
volumes:
- .:/code
ports:
- "8000:8000"