Os X下Vagrant 使用docker出现的目录权限问题?

背景 :
在vagrant里面使用docker,运行mysql容器,持久化数据出现的一些问题,

  • 执行持久化数据到非共享目录,例如~/home/vagrant/mysql/data 不会出现任何问题

  • 执行数据持久化到vagrant共享到本机的目录 在vagrant里面是/vagrant/mysql/data本机是~/develop/vagrant/docker/mysql/data 就会出现问题

clipboard.png

大致原因就是没有权限的样子,引起问题的原因大致是

clipboard.png

搜了很久都没找到合适的答案,特此发帖求助,谢谢

阅读 3.7k
评论
    1 个回答

    好吧,没人回答的样子,在经过几个小时的反复折腾之后,找出了两种解决方案。

    1. 构建镜像的时候强制设置用户的UID为1000
      RUN usermod -u 1000 mysql && chown mysql.mysql /var/run/mysqld/

    2. 修改Vagrantfile 设置 在共享文件夹处增加如下配置

      也就是设置owner:"vboxadd" group:"vboxsf

    clipboard.png

      撰写回答

      登录后参与交流、获取后续更新提醒