Я работаю над приложением.Использование NodeJS для языка и docker docker-compose для развертывания.
У меня есть конечная точка для загрузки файлов.Когда я загружаю файл, приложение сохраняет его в папке «files» (папка files находится в корне проекта).Когда контейнер перезапускается, я не хочу терять файлы, поэтому я создал том с именем "myfiles" и смонтировал его по пути "/ files".
Но когда я проверяю путь к тому myfiles, я не вижу никакихиз созданных файлов по API.И если я перезапущу контейнер, загруженные файлы исчезают.
Вот мой файл docker-compose.yaml для api
version: '3.1'
services:
api:
image: api-image
restart: always
volumes:
- myfiles:/files
volumes:
myfiles:
После docker-compose up -d
я загружаю некоторые файлы и вижу ихв контейнере, вызвав
docker exec -it container_name ls
files node_modules package.json
index.js package-lock.json src
docker exec -it container_name ls files
d5a3455a39d8185153308332ca050ad8.png
Файлы созданы успешно.
Я проверил, правильно ли контейнер монтируется на docker inspect container_name
, и результат:
"Mounts": [
{
"Type": "bind",
"Source": "/var/lib/docker/volumes/myfiles/_data",
"Destination": "/files",
"Mode": "rw",
"RW": true,
"Propagation": "rslave"
}
]