微信公众号:奔跑吧Linux社区
关注可理解更多的Linux相干的常识。问题或倡议,请公众号留言;
欢送订阅笨叔旗舰篇视频节目:https://weidian.com/?userid=1...
MAC for docker真慢
笨叔听人忽悠买了MAC,发现在MAC上编译runninglinuxkernel真麻烦,须要装置一个vmware或者vbox虚拟机。起初据说能够在MAC上装置一个docker,在docker里编译和运行runninglinuxkenrel,那个速度真是一个叫蜗牛。我在vmware虚拟机里编译内核须要大略6分钟,在docker里编译须要60分钟,慢10倍。
真没法用了。
docker sync减速
起初笨叔据说docker for MAC比较慢,是因为host和docker文件系统之间传货色比较慢,就是IO慢,能够应用docker sync来减速。
docker sync装置起来用比较简单。
- 先装置docker-sync
gem install --user-install docker-sync
批改~/.bashrc文件,增加如下语句。
if which ruby >/dev/null && which gem >/dev/null; then
PATH="$(ruby -r rubygems -e 'puts Gem.user_dir')/bin:$PATH"
fi
而后运行:source ~/.bashrc让环境变量失效。
- 装置其余必要的包。
brew install unison
brew install eugenmayer/dockersync/unox
- 在须要和docker 同步的目录(假如你要同步的目录是:/Users/figo/work)上面创立一个docker-sync.yml文件。在该文件中增加如下语句。
version: '2'
syncs:
mac_sync: sync_strategy: 'unison' src: '.'
下面脚本咱们创立了一个mac_sync的同步的标签,它会把/Users/figo/work目录同步到docker里。
- 启动dock-sync服务。
$cd /Users/figo/work
$ docker-sync start
ok Starting unison for sync mac_sync ok Synced /Users/figo/work success Unison server started ok Synced /Users/figo/work success Starting Docker-Sync in the background
$
- 启动docker。
docker run -it --rm --privileged=true -v mac_sync:/root/work registry.cn-shanghai.aliyuncs.com/benshushu/runninglinuxkernel:rlk bash
下面的docker命令把方才创立的mac_sync映射到了docker外面的/root/work目录。
笨叔把docker上传到了阿里云上,大家下载比拟快:registry.cn-shanghai.aliyuncs.com/benshushu/runninglinuxkernel
接着咱们在/root/work目录上面编译内核。
最初咱们发现,docker里的编译速度和vmware差不多了,比之前快了10倍。
微信公众号