我需要在我的mac上使用docker的帮助。我有一个容器,我运行一个mysql实例,我已经创建它一年前,它工作得很好,直到今天。我使用过Kitematic,我不知道为什么我的mysql容器重新启动擦除。遵循本指南
https://timonweb.com/posts/getting-path-and-accessing-persistent-volumes-in-docker-for-mac/
我在这条道路上找到了
linuxkit-025000000001:/var/lib/docker/volumes/41ba749910c92b2ab8e4d4a538fd6d15fad29864f2068f26629a8a7bddfcb53b/_data#
我的表的mysql文件夹。我可以修复这个可怕的错误吗?谢谢。
在主目录中创建一个文件夹并复制其中的数据文件夹的内容:
mkdir ~/mysql-data
cp -r /var/lib/docker/volumes/41ba749910c92b2ab8e4d4a538fd6d15fad29864f2068f26629a8a7bddfcb53b/_data/* ~/mysql-data
现在启动一个mysql容器映射〜/ mysql-data到/ var / lib / mysql
像这样的东西:
docker run \
--name mysql \
-v ~/mysql-data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=some-password \
-d \
mysql:tag
希望这可以帮助
好的,我找到了解决方案。不幸的是,因为我可以在线阅读和在Docker文档中阅读,在Mac OS X系统上(我有Mojave)你无法通过/var/lib/docker/volumes
文件夹访问,因为你必须通过screen
访问才能查看此文件夹,因为你可以在我的链接中阅读回答。所以我做了这些事情:
screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
docker run -it -v ~/Desktop:/Desktop <runs a container from an image> bash
,你可以从Docker documentation上读到~/Desktop/
目录现在在容器中可见为/
下的目录testOrSo
中创建一个名为home
的文件find -name "testOrSo"
并按enter
,现在你有了通往该图像的正确路径。复制你想要的路径(在我的情况下是一个_data
文件夹),找到显示你并选择安装的Desktop
文件夹。我知道它可能不是100%完美的解释或者可能有更快的方法,但所以我解决了我的问题。我希望它可以帮助你!