1

我曾经有一个 mariadb 的 Docker 卷,其中包含我的数据库。作为从 Docker 迁移到 Podman 的一部分,我也在尝试迁移 db 卷。我尝试的方法如下:

1- 将命名的 docker 卷 (/var/lib/docker/volumes/mydb_vol) 的内容复制到我想用于 Podman 卷的新目录 (/opt/volumes/mydb_vol) 2- 运行 Podman 运行:

podman run --name mariadb-service -v /opt/volumes/mydb_vol:/var/lib/mysql/data:Z -e MYSQL_USER=wordpress -e MYSQL_PASSWORD=mysecret -e MYSQL_DATABASE=wordpress --net host mariadb

这成功地创建了一个容器并使用给定的环境变量初始化数据库。问题是容器中的数据库是空的!我尝试将主机安装卷更改为 /opt/volumes/mydb_vol/_data 并将容器卷同时更改为 /var/lib/mysql ,一次一个。他们都没有工作。

事实上,当我在结果容器中“podman execute -t​​i container_digest bash”时,我可以看到表已经成功挂载到指定的容器目录中,但是 mysql shell 说数据库是空的!

知道如何正确地将 Docker 卷迁移到 Podman 吗?这甚至可能吗?

4

1 回答 1

1

我通过不将目录视为 docker 卷来解决它,而是将其安装到容器中:

podman run --name mariadb-service --mount type=bind,source=/opt/volumes/mydb_vol/data,destination=/var/lib/mysql -e MYSQL_USER=wordpress -e MYSQL_PASSWORD=mysecret -e MYSQL_DATABASE=wordpress mariadb
于 2020-07-27T23:03:29.150 回答