【发布时间】:2015-01-14 07:56:48
【问题描述】:
我对 Docker 还很陌生,偶然发现了一个我无法找到任何解决方案的问题。
我在 Mac 上,所以我必须使用 Boot2Docker 作为我的环境。我使用 boot2docker ssh 在 VM 内完成所有工作,以尽可能模拟“真实”情况。
我的问题是,当我关闭 boot2docker 并关闭 boot2docker 或停止时,我会丢失所有更改...如何保留我的编辑?
我所做的是创建一些目录,例如 /opt/sites,并将一些代码添加到 .profile。当我再次启动 boot2docker 时,一切都消失了。
我尝试将所有内容都放在 /Users... 作为 boot2docker 1.3 及更高版本自动挂载该位置,但随后在某些容器(更具体地说是 MySQL 容器...)上使用 --volumes 时遇到问题
我认为我可以解决数据存储,(--volumes问题),但是我将PATH和其他环境变量的定义放在哪里?
我可能误解了一些东西,所以请指出正确的方向;-)
【问题讨论】:
-
一个问题(我可能离这里很远)。您也确实创建了 docker 容器,对吗?那是你挂载卷的地方,也是你设置 MySQL 等的地方。Boot2Docker 只是一个小型 Linux VM,因为 Mac OSX 不是 Linux。
-
我确实创建了容器并安装了卷。但是,当我为我的 MYSQL 容器映射一个卷以存储其数据库时,(/Users...)它失败了...如果我在 /opt/sites/mysql/data 上安装一个卷,它一切正常。我试图创建一个使用 bash 脚本来设置、创建、运行、启动和停止容器组的环境。我想设置我的 PATH 变量来指出这些脚本。我在 /Users... 上有脚本,所以它们是安全的,但是如何以持久的方式在 VM 内设置我的 PATH 变量?
-
好的,你能告诉我你如何安装它吗?
-
感谢您的帮助,非常感谢 docker run \ --name=redmine-mysql \ -d \ --env-file $SITE_ROOT/redmine/mysql.env \ -v $ SITE_ROOT/redmine/mysql:/var/lib/mysql \ sameersbn/mysql 当 SITE_ROOT 指向 /Users 上的目录时,我遇到 MySQL 问题...如果我将它指向 boot2docker 环境中的 /opt/sites (boot2docker ssh)然后它工作。这是问题的一方面,另一方面是如果我停止并启动,boot2docker 环境中的所有内容都消失了......难道事情不应该在 VM 中持续存在吗?您不能在不丢失所有内容的情况下启动和停止它吗?
-
尝试学习格式化但被打断了...
docker run \ --name=redmine-mysql \ -d \ --env-file $SITE_ROOT/redmine/mysql.env \ -v $SITE_ROOT/redmine/mysql:/var/lib/mysql \ sameersbn/mysql阅读起来更容易...
标签: docker boot2docker