解決 Fish Shell 無法設定 docker-machine env

Aug 23, 2017 Docker English

在開發時,我喜歡使用 Fish shell 與 Docker,我相信也有不少人喜歡這樣的使用組合。但是有時候會遇到 Fish Shell 的特殊問題,例如:於 Fish Shell 環境下執行 eval (docker-machine env your-machine) 時會遇到 fish: Unknown command ‘export’,本篇將介紹如何解決這個問題。



解決 fish: Unknown command ‘export’

在解決問題之前,我們必須先瞭解 Fish Shell 如何設定 Shell 參數。Fish 跟其他 Shell 不同,它使用 set 而不是 export。例如:

set -x [variable-name] [variable-value]

而當你執行 docker-machine env your-machine 時會得到:

export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://100.100.100.100:2376"
export DOCKER_CERT_PATH="/path/to/your/machine"
export DOCKER_MACHINE_NAME="your-machine"

很明顯地,Fish 並不認得其中的 export 指令,所以它就會拋出錯誤訊息。幸運地是,docker-machine 已經提供了一個簡單的解決方式,也是就是利用 shell 參數:

eval (docker-machine env your-machine --shell=fish)

如此一來,你就應該可以正常設定參數。


你也可能會喜歡:




若對於文章內容有任何建議與指正,非常歡迎你告訴我或者與我一起討論 ! :)

zeckli.devforgalaxy@gmail.com   © 2015-2019 zeckli, thanks to Jekyll and GitHub.