【docker】關於docker中掛載的解釋


 

現在有這么一個命令:

docker run -p 33061:3306 --name mysql  --restart=always -e MYSQL_ROOT_PASSWORD=pisen  -v /etc/localtime:/etc/localtime:ro  -v /etc/timezone:/etc/timezone:ro  -d mysql:5.7

因為着重要說掛載的問題,就單獨揪出來參數來說

-v /etc/localtime:/etc/localtime:ro

就是將  宿主機的/etc/localtime文件掛載到容器的/etc/localtime 文件,並且容器內的/etc/localtime文件設置為只讀(:ro)

實際的效果就是mysql容器啟動后,時間時區的設置,使用的就是宿主機的 /etc/localtime 文件內設置的內容起作用。

 

如果沒有設置只讀的情況下,該掛載實現的效果是:

  情況1:使用echo命令去修改

echo 'lq' > timezone

  無論更改宿主機上的/etc/localtime文件內容還是修改容器內的/etc/localtime文件內容,都會影響到對方。

  

  情況2:使用vi命令去修改

vi timezone

  則無論修改哪邊都不會影響到另外一方的文件內容。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM