如何使 macOS 與 Docker 共享目錄 ?
讓開發環境與測試環境分離
Contents
當開發環境都 Docker 化,最常遇到的問題就是開發環境該如何與測試環境分離,如 IDE 裝在 macOS,如 WebStorm / Rider / VS Code,且 code 也放在 macOS,但實際 build code 或跑測試,卻是在 container 內,因此勢必要將 macOS 的目錄與 container 共享。
Version
macOS High Sierra 10.13.3
Docker for Mac 17.20.0-ce-mac49 (21995)
參數 -v
由於每個人要分享的目錄都不一樣,所以不能將共享目錄寫在 Dockerfile
,而必須在使用 docker run
建立 container 加上 -v
1 | $ docker run --name MyJenkinsCore -p 8080:8080 -p 50000:50000 -v jenkins_home:/var/jenkins_home -v /Users/oomusou/Code:/var/code oomusou/jenkins-core |
以上為例
1 | -v /Users/oomusou/Code:/var/code |
所有程式都放在 macOS 的 /Users/oomusou/Code
,我們希望對應到 container 內的 /var/code
,只要 /Users/oomusou/Code
有任何修改,在 container 內都看得到。
Conclusion
- 一個很小的參數,但實務上卻非常有用