如何解決Linux系統(tǒng)下Docker占滿分區(qū)的問題
今天碰到了一個問題,訪問數(shù)據(jù)庫的時候,發(fā)現(xiàn)訪問不了,爆存儲空間不夠的錯誤,隨后輸入命令:
df -h
發(fā)現(xiàn) /dev/vda1
,也就是系統(tǒng)盤被占滿了。不是專職的運維,所以,就開始百度解決問題。下面是解決路徑:
首先是找到大文件存儲位置,通過命令 du -sh /*
,找到一些目錄后,發(fā)現(xiàn)有幾個目錄特別大,比如 /var ;
然后確認分區(qū), df /var
,發(fā)現(xiàn)這個目錄的分區(qū)是 /dev/vda1
,于是就進入這個目錄,開始刪東西。我開始刪掉了很多日志,但發(fā)現(xiàn)并沒有多少作用,于是再一次使用命令: du -sh *
;
在 /var
目錄下發(fā)現(xiàn) /lib/docker
文件夾占用最大,于是就知道問題所在了,docker的鏡像和容器默認放在目錄 /var/lib/docker
下,占用 6.6G ;
接下來的問題就懂了,就是解決docker占用空間過大的問題,于是一開始的思路是刪除不需要的容器和鏡像,但發(fā)現(xiàn)很悲劇的是空間沒有減少。于是,就又開始第二個思路,就是把我需要的鏡像和容器導出來,但更悲劇的是,提示空間不足,無法導出……
因為鏡像是弄了很久的,所以不想輕易舍棄。就想了很久,終于想出了一個主意。 先把 /var/lib/docker 文件夾移出去,然后重新設置docker的數(shù)據(jù)存儲位置。
步驟如下(CentOS):
/etc/init.d/docker stop # 關閉docker mv /var/lib/docker /home/docker # 遷出docker的數(shù)據(jù)(home目錄沒有掛載在系統(tǒng)盤),至此,系統(tǒng)盤的問題解決
然后是設置docker是數(shù)據(jù)存儲位置,編輯 /etc/sysconfig/docker 文件, 添加-g 參數(shù)的設置, 如下:
other_args="-g /home/docker"
啟動docker
/etc/init.d/docker start
至此,問題解決。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
docker compose 一鍵部署分布式配置中心Apollo的過程詳解
這篇文章主要介紹了docker compose 一鍵部署分布式配置中心Apollo,今天我們使用Docker來進行搭建,畢竟Docker對于開發(fā)者來說更友好一些,需要的朋友可以參考下2021-09-09docker-compose部署eureka服務端、客戶端的案例代碼
這篇文章主要介紹了docker-compose部署eureka服務端、客戶端,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03vscode利用ssh配置docker容器并開啟遠程編程模式的詳細步驟
這篇文章主要介紹了vscode利用ssh配置docker容器內開啟遠程編程模式,本文給大家講解的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03