決定在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仍是慢多了。。。