我目前正在嘗試使用Docker開發沙箱。 Docker通過正在運行的守護進程生成進程,並且我在啓用limits.conf文件中闡述的限制時遇到了很大的麻煩,使得它們適用於守護進程。具體來說,我正在運行一個forkbomb,這樣守護進程就是生成所有新進程的進程。我對用戶進行這個調用的nproc限制似乎並沒有得到應用,我對於我的生活還是無法弄清楚如何使它工作。我很安靜,它會像將正確的文件添加到/etc/pam.d/一樣簡單,但我不確定。爲正在運行的守護進程啓用PAM配置(limits.conf)
3
A
回答
2
PAM限制僅適用於與PAM一起玩的過程。默認情況下,當你在容器中啓動一個shell時,它與PAM沒有任何關係,並且通過PAM設置限制是行不通的。
下面是一些其他的方法來實現它!
而不是立即開始你的過程中,你就可以開始一個小包裝腳本,它會做你的執行過程之前適當
ulimit
電話。如果你想要一個交互shell,可以運行
login -f <username>
(例如login -f root
);這將使用正常的登錄過程在機器上自動登錄(並且應該通過正常的PAM機制)。如果你想要所有的容器受到這些限制,你可以設置你的系統的限制,然後重新啓動Docker與這些下限;容器是由Docker創建的,默認情況下,它們也會繼承這些限制。
相關問題
- 1. Cron守護進程正在運行,系統日誌守護進程正在運行,但cron不會運行
- 2. 使用自定義配置運行扭曲的守護進程
- 3. Linux守護進程的正確行爲
- 4. 在啓動時運行python腳本作爲守護進程(Ubuntu)
- 5. 運行web.py作爲守護進程
- 6. 運行celeryd_multi作爲守護進程
- 7. 將SBT作爲守護進程運行
- 8. 使用gdb調試正在運行的守護進程
- 9. Python:在Windows7中運行守護進程
- 10. 配置mongod服務:啓動守護進程或啓動代理?
- 11. Linux守護進程啓動
- 12. Linux守護進程停止啓動 - 停止守護進程
- 13. 當從守護進程運行時Telnet無法正常運行
- 14. PAM limits.conf不能在ubuntu的www-data上運行oerot
- 15. 守護進程如何在啓動時自動運行
- 16. 像守護進程運行solr
- 17. heroku運行一個守護進程
- 18. 如何運行docker守護進程?
- 19. Celeryd運行多個守護進程
- 20. 運行Django FCGI守護進程同時
- 21. 通過rsh運行守護進程
- 22. Docker - 如何將mongodb進程作爲守護進程運行
- 23. 如何檢查Hadoop守護進程是否正在運行?
- 24. 檢查守護進程是否正在運行
- 25. 如何確保只有一個守護進程正在運行?
- 26. 如何查看gradle守護進程是否正在運行?
- 27. 測試以查看Gearman守護進程是否正在運行
- 28. Docker守護進程正在運行,但它無法連接
- 29. 使用django作爲守護進程運行celerybeat的問題
- 30. 用於啓動守護進程
Docker 1.6(即將發佈)將允許設置per-container ulimits。更多的信息和部分文件可以在拉請求中找到; https://github.com/docker/docker/pull/9437/files – thaJeztah