[Docker] 在 container 裡設定 ulimit 產生 core dump

[Docker] 在 container 裡設定 ulimit 產生 core dump

今天試著在 docker 建立出來的 container 上設定 ulimit,

想要設定 ulimit -c unlimited,

這樣就可以在程式當掉時產生 core dump~

 

試著在 Dockerfile 裡面加上下面的指令,卻沒有效果:

echo "ulimit -c unlimited" >> ~/.bashrc

 

進去建立好的 container 裡面,bashrc 的內容並沒有改變…

幸好後來在 docker –ulimit does not support unlimited or large numbers

找到另一個設定的方式,那就是透過 docker run 的 –ulimit 參數:

docker run -it --ulimit core=-1 testuser/debug_hacks /bin/bash

 

這邊的 core=-1 是等同於 ulimit -c unlimited 的意思,

不過如果你打 core=unlimited 有可能會出現語法錯誤,應該是個 bug…

加上 –ulimit core=-1 之後,進去 container 的 shell 裡面,

可以看到 ulimit 已經正確被設定囉~

root@2a81faa342e7:/# ulimit -c
unlimited

 

(本頁面已被瀏覽過 179 次)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料