docker ubuntu 文件同步_使用 docker-sync 让 mac 和 docker 之间的文件同步变快

最近,在 mac 上面安装了 docker,然后让开发环境运行在 docker 上面

总的来说感觉不错

但是同一个页面,在 linux 上面的时候需要 4 秒,在 mac for docker 上面需要 25 秒

调查了一下原因

搜索了一下解决办法

1. vagrant -> virtualbox -> linux -> docker

试了下用 vagrant 安装 linux,然后 docker 跑在 linux 上面,用 nfs 来同步

速度确实变快了,但是多安装了一层总感觉有点麻烦

所以调查了一下其他的解决办法

2. docker-sync

在 docker-for-mac 的网站和 github 的 issue 里面有介绍

试了下感觉不错,总结下如何使用的

1. 在 mac 上面安装 docker-sync$ gem install docker-sync

$ brew install fswatch

$ brew install unison

$ brew install eugenmayer/dockersync/unox

$ docker-sync start

2. 添加 docker-sync.yml 文件version: '2'

syncs:

sync-folder:

src: '.'

sync_strategy: 'unison'

# 同步时的用户ID,不指定的话为root

sync_userid: '1000'

sync_excludes: ['vendor/bundle/', 'node_modules', 'tmp']

具体设置可以看这里

3. 添加 docker-compose-dev.yml 文件version: '3'

volumes:

sync-folder:

external: true

services:

app:

volumes:

- sync-folder:/www/sample_project

把 mac 的当前文件夹和 docker 服务器里面的/www/sample_project 进行同步

4. docker-compose up$ docker-compose -f docker-compose.yml -f docker-compose-dev.yml up -d

然后无论在 mac 还是在 docker 里面进行文件修改,都会自动进行同步

有时候不知道什么原因无法同步的时候可以重启 docker-sync

$ docker-sync clean

$ docker-sync start

总结

mac for docker 的文件同步很慢,目前发现两种解决方法

vagrant -> virtualbox -> linux -> docker

docker-sync

个人比较喜欢第二种,有更好的解决办法请回复我

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值