决定在wsl下跑docker(laradock),docker server依赖docker for windows
.php
wsl的配置以前折腾过,主要是:linux
wsl-terminal zsh tmux xlunch(方便copy和wsl下的linux gui在win10展现).
不认/mnt/d
这样的wsl.conf的默认配置目录. volume挂不上,天然build时各类fail。git
法1: 手动改是把d盘直接mount在根目录.docker
alias mountD='sudo mount --bind /mnt/d/ /d'
每次开机都运行这个,麻烦,并且权限也是问题。windows
#Let’s enable extra metadata options by default [automount] enabled = true root = / options = "metadata,umask=022" mountFsTab = false #Let’s enable DNS – even though these are turned on by default, we’ll specify here just to be explicit. [network] generateHosts = true generateResolvConf = true #All windows program shoulbe be normally run in wsl. great! [interop] enable = true appendWindowsPath = true
直接把window盘挂载到/上,这样wsl docker直接认了.app
可是依赖/mnt/c
的wsl-terminal不行,那就换掉好了,试了下发现了terminus
这个神器。phpstorm
phpstorm在windows下修改文件,即使内容没变,文件都变成了755, 缘由在于wsl.conf里的设置是umask=022.遂修改以下:ide
options = "metadata,dmask=022,fmask=133"
同时,让在wsl下新建的文件权限一致:(默认umask=000),在zsh里增长配置:ui
umask 022
这样在wsl git拉的代码,能够在wsl里改,也能够在windows经过ide改,没有权限问题,能够愉快的开发了。code
仍是要吐槽,以前一直是纯linux环境开发,wsl仍是慢多了。。。