Docker Rancher永久存储器不能正常工作
问题描述:
我是Rancher和Docker的新手,我无法使数据持续存在。Docker Rancher永久存储器不能正常工作
我到目前为止所做的是使用Rancher/Cattle我已经通过UI创建了一个EC2服务器,并运行了下面的docker-compose.yml文件,它成功地激活了mysql服务。
我期待的是,一旦堆栈/服务正在运行,即使堆栈/服务已被删除,任何写入容器内的dir/var/lib/mysql的文件都将被保留。我期望我应该能够在EC2服务器上找到该文件。这是一个正确的假设吗?
我可以确认,当我通过Rancher UI停止服务时,我添加的任何文件在我重新启动服务并登录到容器后都会保留。但是,当我删除堆栈并使用相同的docker-compose.yml文件在同一主机上重建它时,这些文件已被删除。
version: '2'
services:
mysql:
container_name: flask_mysql
restart: always
image: mysql:latest
environment:
MYSQL_ROOT_PASSWORD: 'test_pass' # TODO: Change this
MYSQL_USER: 'test'
MYSQL_PASS: 'pass'
volumes:
- my-datavolume:/var/lib/mysql
volumes:
my-datavolume:
driver: local
有什么建议吗?
答
您已经定义了一个堆栈作用域卷,它与该特定堆栈相关联,并在删除堆栈时被删除。如果你想让它住在堆栈之外,你需要一个环境范围的体积:http://rancher.com/docs/rancher/v1.6/en/cattle/volumes/#environment-scoped-volumes
谢谢文森特,那完美的工作。 – teamerMan