欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker容器磁盤占滿的一些情況匯總

 更新時(shí)間:2019年07月10日 09:49:53   作者:isea533  
這篇文章主要給大家介紹了關(guān)于Docker容器磁盤占滿的一些情況,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Docker具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧

前言

本文是我自己最近遇到的兩種情況,后續(xù)有新發(fā)現(xiàn)再補(bǔ)充。

參考文檔:https://docs.docker.com/engine/reference/commandline/dockerd/

應(yīng)用日志過多

默認(rèn)情況下,每個(gè) Docker 容器都有 10G 的存儲(chǔ)空間,當(dāng)超出該大小時(shí),容器就會(huì)出現(xiàn)問題。

可以參考官方文檔 dm.basesize 參數(shù)的說明來修改默認(rèn)的容器大小:

指定創(chuàng)建基本設(shè)備時(shí)要使用的大小,這會(huì)限制圖像和容器的大小。默認(rèn)值為10G。請(qǐng)注意,精簡(jiǎn)設(shè)備本質(zhì)上是“稀疏的”,因此大多數(shù)空的10G設(shè)備不會(huì)在池上使用10 GB的空間。但是,文件系統(tǒng)將為空盒使用更多空間,設(shè)備越大。

可以在守護(hù)進(jìn)程重啟時(shí)增加基本設(shè)備大小,這將允許所有未來的圖像和容器(基于這些新圖像)具有新的基本設(shè)備大小。

例子

$ sudo dockerd --storage-opt dm.basesize=50G

這將使基本設(shè)備大小增加到50G。如果現(xiàn)有基本設(shè)備大小大于50G,Docker守護(hù)程序?qū)伋鲥e(cuò)誤。用戶可以使用此選項(xiàng)擴(kuò)展基本設(shè)備大小,但不允許縮小。

此值會(huì)影響系統(tǒng)范圍的“基本”空文件系統(tǒng),該文件系統(tǒng)可能已被拉出的圖像初始化和繼承。通常,更改此值需要執(zhí)行其他步驟:

$ sudo service docker stop

$ sudo rm -rf /var/lib/docker

$ sudo service docker start

我在這里遇到的問題是因?yàn)槟硞€(gè)模塊會(huì)在 10 分鐘內(nèi)輸出 1G 的日志,修改日志策略后可以解決該問題。

Dockerd 日志過多

有一個(gè) GitLab 的 docker 服務(wù),運(yùn)行幾個(gè)月后就會(huì)出現(xiàn)無法 push 和 pull 的情況,原因都是因?yàn)?/var/lib/docker 磁盤空間已滿導(dǎo)致的。而導(dǎo)致磁盤空間占滿的原因是因?yàn)?dockerd 的日志占用了十幾G的空間導(dǎo)致的。

日志文件的路徑形如: /var/lib/docker/containers/CONTAINER_ID/CONTAINER_ID-json.log

參考:https://stackoverflow.com/questions/31829587/docker-container-logs-taking-all-my-disk-space

可以參考如下幾種解決方案:

1. 啟動(dòng)容器參數(shù)

參考:https://docs.docker.com/engine/reference/commandline/run/

使用 --log-opt Log driver options 配置日志策略。

例如: --log-opt max-size=50m。

2. 全局默認(rèn)配置

在 daemon.json 中配置,linux 中默認(rèn)位置為 /etc/docker。

配置示例:

{
 "log-driver": "json-file",
 "log-opts": {
  "max-size": "10m",
  "max-file": "3",
  "labels": "production_status",
  "env": "os,customer"
 }
}

日志配置參考:https://docs.docker.com/config/containers/logging/configure/

完整 daemon.json 示例參考:https://docs.docker.com/engine/reference/commandline/dockerd/

{
 "authorization-plugins": [],
 "data-root": "",
 "dns": [],
 "dns-opts": [],
 "dns-search": [],
 "exec-opts": [],
 "exec-root": "",
 "experimental": false,
 "features": {},
 "storage-driver": "",
 "storage-opts": [],
 "labels": [],
 "live-restore": true,
 "log-driver": "json-file",
 "log-opts": {
 "max-size": "10m",
 "max-file":"5",
 "labels": "somelabel",
 "env": "os,customer"
 },
 "mtu": 0,
 "pidfile": "",
 "cluster-store": "",
 "cluster-store-opts": {},
 "cluster-advertise": "",
 "max-concurrent-downloads": 3,
 "max-concurrent-uploads": 5,
 "default-shm-size": "64M",
 "shutdown-timeout": 15,
 "debug": true,
 "hosts": [],
 "log-level": "",
 "tls": true,
 "tlsverify": true,
 "tlscacert": "",
 "tlscert": "",
 "tlskey": "",
 "swarm-default-advertise-addr": "",
 "api-cors-header": "",
 "selinux-enabled": false,
 "userns-remap": "",
 "group": "",
 "cgroup-parent": "",
 "default-ulimits": {
 "nofile": {
  "Name": "nofile",
  "Hard": 64000,
  "Soft": 64000
 }
 },
 "init": false,
 "init-path": "/usr/libexec/docker-init",
 "ipv6": false,
 "iptables": false,
 "ip-forward": false,
 "ip-masq": false,
 "userland-proxy": false,
 "userland-proxy-path": "/usr/libexec/docker-proxy",
 "ip": "0.0.0.0",
 "bridge": "",
 "bip": "",
 "fixed-cidr": "",
 "fixed-cidr-v6": "",
 "default-gateway": "",
 "default-gateway-v6": "",
 "icc": false,
 "raw-logs": false,
 "allow-nondistributable-artifacts": [],
 "registry-mirrors": [],
 "seccomp-profile": "",
 "insecure-registries": [],
 "no-new-privileges": false,
 "default-runtime": "runc",
 "oom-score-adjust": -500,
 "node-generic-resources": ["NVIDIA-GPU=UUID1", "NVIDIA-GPU=UUID2"],
 "runtimes": {
 "cc-runtime": {
  "path": "/usr/bin/cc-runtime"
 },
 "custom": {
  "path": "/usr/local/bin/my-runc-replacement",
  "runtimeArgs": [
  "--debug"
  ]
 }
 },
 "default-address-pools":[{"base":"172.80.0.0/16","size":24},
 {"base":"172.90.0.0/16","size":24}]
}

配置參數(shù)后需要重啟 docker 服務(wù)。

docker-compose 配置

參考:https://docs.docker.com/compose/compose-file/compose-file-v2/

配置示例:

logging:
 options:
  max-size: '12m'
  max-file: '5'
 driver: json-file

補(bǔ)充

寫的比較急,貼的鏈接中都有非常完整的信息,應(yīng)該都能解決此類問題。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • win10家庭版安裝Docker for Windows

    win10家庭版安裝Docker for Windows

    這篇文章主要介紹了win10家庭版安裝Docker for Windows,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Docker之cAdvisor的安裝使用方式

    Docker之cAdvisor的安裝使用方式

    這篇文章主要介紹了Docker之cAdvisor的安裝使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 詳解Docker中的nacos集群部署方式

    詳解Docker中的nacos集群部署方式

    在 Docker 中使用 Nacos,你可以通過拉取官方提供的 Docker 鏡像并運(yùn)行容器的方式來快速部署,這篇文章主要介紹了Docker中的nacos集群部署方式,感興趣的朋友一起看看吧
    2024-01-01
  • dockerfile發(fā)布springboot項(xiàng)目實(shí)踐

    dockerfile發(fā)布springboot項(xiàng)目實(shí)踐

    使用Docker的其中一個(gè)目的,是為了更加簡(jiǎn)單,方便的部署我們編寫的服務(wù),本文主要介紹了dockerfile發(fā)布springboot項(xiàng)目實(shí)踐,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • 詳解Docker創(chuàng)建php開發(fā)環(huán)境遇到的權(quán)限問題解決方案

    詳解Docker創(chuàng)建php開發(fā)環(huán)境遇到的權(quán)限問題解決方案

    本篇文章主要介紹了Docker創(chuàng)建php開發(fā)環(huán)境遇到的權(quán)限問題解決方案,具有一定的參考價(jià)值,有需要的可以了解一下。
    2016-11-11
  • docker Nginx PHP-FPM單機(jī)多站點(diǎn)布署的方法

    docker Nginx PHP-FPM單機(jī)多站點(diǎn)布署的方法

    這篇文章主要介紹了docker Nginx PHP-FPM單機(jī)多站點(diǎn)布署的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-07-07
  • 詳解利用ELK搭建Docker容器化應(yīng)用日志中心

    詳解利用ELK搭建Docker容器化應(yīng)用日志中心

    這篇文章主要介紹了詳解利用ELK搭建Docker容器化應(yīng)用日志中心,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-04-04
  • 一文教會(huì)你如何高效地搭建Docker私有倉(cāng)庫(kù)

    一文教會(huì)你如何高效地搭建Docker私有倉(cāng)庫(kù)

    Docker容器應(yīng)用的開發(fā)和運(yùn)行離不開可靠的鏡像管理,雖然Docker官方也提供了公共的鏡像倉(cāng)庫(kù),但是從安全和效率等方面考慮,部署我們私有環(huán)境內(nèi)的Registry也是非常必要的,這篇文章主要介紹了如何高效地搭建Docker私有倉(cāng)庫(kù)的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • Docker安裝redis并且設(shè)置密碼,以及進(jìn)入容器修改密碼方式

    Docker安裝redis并且設(shè)置密碼,以及進(jìn)入容器修改密碼方式

    這篇文章主要介紹了Docker安裝redis并且設(shè)置密碼,以及進(jìn)入容器修改密碼方式,
    2024-01-01
  • 如何使用docker+frp進(jìn)行內(nèi)網(wǎng)穿透

    如何使用docker+frp進(jìn)行內(nèi)網(wǎng)穿透

    這篇文章主要介紹了使用docker+frp進(jìn)行內(nèi)網(wǎng)穿透,在公網(wǎng)上的ubuntu系統(tǒng)需要配置相關(guān)操作,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-04-04

最新評(píng)論