Я довольно новичок в Docker, поэтому я могу сделать что-то действительно не так
Мне нужно поделиться некоторыми файлами между контейнерами Docker, используя файл компоновки Docker
Я уже создалтакой том
docker volume create shared
После этого я могу проверить созданный том
docker volume inspect shared
[
{
"CreatedAt": "2019-03-08T14:54:57-05:00",
"Driver": "local",
"Labels": {},
"Mountpoint": "/var/lib/docker/volumes/shared/_data",
"Name": "shared",
"Options": {},
"Scope": "local"
}
]
Мой файл docker-compose.yaml выглядит следующим образом
version: '3.1'
services:
service1:
build:
context: Service1
dockerfile: Dockerfile
restart: always
container_name: server1-server
volumes:
- shared:/shared
service2:
build:
context: Service2
dockerfile: Dockerfile
restart: always
container_name: server2-server
volumes:
- shared:/shared
volumes:
shared:
external: true
ИDockerfile выглядит так (только для целей тестирования)
FROM microsoft/dotnet:2.2-sdk AS build-env
RUN echo "test" > /shared/test.info
Когда я запускаю команду docker-compose up, я получаю эту ошибку
/bin/sh: 1: cannot create /shared/test.info: Directory nonexistent
Если я изменяю Dockerfile на этот
FROM microsoft/dotnet:2.2-sdk AS build-env
WORKDIR /app
COPY *.csproj ./
RUN cp *.csproj /shared/
Я получаю эту ошибку
cp: cannot create regular file '/shared/': Not a directory
Есть идеи, как этого добиться?