У меня есть docker-compose.yml
: `` `
version: '2'
volumes:
db-data:
vendor:
var:
services:
mysql:
container_name: test-mysql-5.7
image: mysql:5.7
ports:
- '3306:3306'
volumes:
- db-data:/var/lib/mysql
- /home/ubuntu/www/prestashop-shops/test-ps/seeds:/docker-entrypoint-initdb.d
environment:
MYSQL_ROOT_PASSWORD: test123
restart: always
` ``
Я запускаю docker-compose up -d
, и он вызовет контейнер со связанными томами.Я играл с этим, и мне нужно было разорвать его, чтобы снова протестировать docker-compose.yml
.
Я разрываю, запустив docker-compose rm -fsv
в папке, которая работает для разрушения контейнера и некоторых томов.
Затем я запускаю docker volume ls | grep test- | awk '{print $2}' | xargs docker volume rm
тома test_db-data, test_var, test_vendor
, также созданные файлом compose.
Затем я снова запускаю docker-compose up -d
, но когда я вхожу в экземпляр mysql
и проверяюбазы данных с помощью команды SHOW DATABASES;
.Все базы данных, которые были созданы до , все еще там .
Я проверил файловую систему /var/lib/docker/volumes/
, чтобы увидеть, есть ли для этого какие-либо физические файлы, а их нет.
Я пытался переименовать часть db-data
моего файла композиции во что-то еще, и он все еще там.
Я думаю, что это может быть кэшировано на изображении, но я не помню, чтобы что-то создавалось.
Интересно, если данные тома сохраняются где-либо или кэшируются где-либо, потому что я не могу получить чистый экземпляр mysql, развернутый на моем сервере сейчас.