您好,登錄后才能下訂單哦!
這篇文章主要介紹“Docker日志太多導致磁盤占滿怎么辦”,在日常操作中,相信很多人在Docker日志太多導致磁盤占滿怎么辦問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Docker日志太多導致磁盤占滿怎么辦”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
我有一臺服務器上面部署了多個docker容器, 并且每個docker容器都往stderr中源源不斷的輸出日志,導致今天磁盤被占滿了。搜索了一下,docker官方網站上提供了一篇解決方案的文章。
Docker容器在啟動/重啟的時候會往/var/lib/docker
中寫東西,如果你在啟動docker容器遇到No space left on device
的問題,可以按照下面的步驟進行清理相關的日志操作。
1、 對/var/lib/docker/containers
下的文件夾進行排序,看看哪個容器占用了太多的磁盤空間
$ du -d1 -h /var/lib/docker/containers | sort -h
上面的命令會按照升序的方式對于容器文件夾進行排序,并列出容器文件夾的大小:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | [root@dbl14195 testnet]# du -d1 -h /var/lib/docker/containers | sort -h 36K /var/lib/docker/containers/4d91f92dd7604216f2e9e123572e9a80d7bbee3d8c8ce7be2ed241c572816fb6 40K /var/lib/docker/containers/374aa0ba92b37d829012282ff15c1bb838d95dedb54589874c4285991be2d4aa 40K /var/lib/docker/containers/7cfdbc453b2f7109b52e974061754266e6cdc0ccaee62ab4a5887865113e1144 40K /var/lib/docker/containers/84ee24989ad52383c6e99eaa4d236e600095aa7f855e81fbafe10416b75ceefb 40K /var/lib/docker/containers/aeced3ef3e23df27e52f65743bb05448b46a2c660acc5b0aab12604e060779b4 40K /var/lib/docker/containers/c36722baf0d2e1c22b7dde9979665ab62cd8ab85c3f1d0f427bb7a34e0fd977a 44K /var/lib/docker/containers/62477b332d18e192d70c7420435d47a379e6bbd8de13da8a8762e0fd95b341ca 44K /var/lib/docker/containers/78da0cf9743b6940fabbbd8c574b99dc5deb642fa998a8f819a6c6978fc875d7 44K /var/lib/docker/containers/9f63daf7caa7c469385bed4b178fbfe662e15b8c569c6644081af090f8e40426 44K /var/lib/docker/containers/e2d1286119a45aac7e58d6dac6e4b44b1d1288799b735943be45abed50244e56 56K /var/lib/docker/containers/ebd1bd211a1b9d02bb39bfb80eec3d0960a5b25e18f54d7371781ec456e7a1e8 176K /var/lib/docker/containers/1fe0a241e5ce9726c547c68739793633f9dd906768a36fe80e8fb80373aa3bfb 17M /var/lib/docker/containers/ac30e68d454b37d22b3964053a2b52ba043baa1add13556a09c0e3e05589104f 25M /var/lib/docker/containers/872ca4e3d005594591ca2df0e832d36eef448981ab2820c69df4ff1399f8423e 25M /var/lib/docker/containers/bd49a0a0368b99a9f69981d8b921ea1830957451577b635a07d5425d48e1144b 30M /var/lib/docker/containers/8f732390a020a6ef647fabb04da32c87d6341b72ac2af6bb4a1cf5743fda54db 88M /var/lib/docker/containers/648e883aa0a93f696f64e4ab76434657f4845769fe1eaaad49c2dc1d7960f2b0 171M /var/lib/docker/containers/8de7ff9f0276586a6ab346c2be1c9dc879bbb0d795fa7776c1d8d1568ea2794a 354M /var/lib/docker/containers |
2、選擇你要清理的容器進行清理
1 | $ cat /dev/null > /var/lib/docker/containers/container_id/container_log_name |
上述命令會清空對應的日志,如:
1 | cat /dev/null > /var/lib/docker/containers/374aa0ba92b37d829012282ff15c1bb838d95dedb54589874c4285991be2d4aa/374aa0ba92b37d829012282ff15c1bb838d95dedb54589874c4285991be2d4aa-json.log |
3、限制日志文件的大小
啟動容器時,可以通過參數設置日志文件的大小、日志文件的格式。
1 | docker run -it --log-opt max-size=10m --log-opt max-file=3 alpine ash |
到此,關于“Docker日志太多導致磁盤占滿怎么辦”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。