Docker Rancher 持久存储不工作
Docker Rancher persistent storage not working
我是 Rancher 和 Docker 的新手,我无法持久保存我的数据。
到目前为止我所做的是使用 Rancher/Cattle 我已经通过 UI 创建了一个 EC2 服务器并且有 运行 下面的 docker-compose.yml 文件,它成功激活了 mysql 服务。
我期望的是,一旦 stack/service 为 运行,即使 stack/service已被删除。我希望我应该能够在 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
我是 Rancher 和 Docker 的新手,我无法持久保存我的数据。
到目前为止我所做的是使用 Rancher/Cattle 我已经通过 UI 创建了一个 EC2 服务器并且有 运行 下面的 docker-compose.yml 文件,它成功激活了 mysql 服务。
我期望的是,一旦 stack/service 为 运行,即使 stack/service已被删除。我希望我应该能够在 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