本机服务器环境是centos7 (vbox虚拟机) 安装Docker后 运行正常,某次强行关闭了虚拟机 导致后续docker运行不起来,发现报错是与storage有关,所以网上查原因是说,docker原本是在ubuntu上开发的,ubuntu有 union fs这种支持,但是centos内核不支持,docker为了能够在centos下 开箱即用,所以弄了loop-lvm ,做到不用配置,但是这个东西官方明确说明 不建议在生成环境使用,所以通过网上查找资料,将loop-lvm 更换为direct-lvm
我给我的虚拟机 创建了一个虚拟硬盘 并分出了一个5G大小的分区 /dev/sdb2 先停止docker服务 systemctl stop docker.service
1、创建之前先将/dev/sdb2分区用fdisk把id改为8e(lvm)
2、创建pv (创建完毕 pvdisplay 能看到成果)
pvcreate /dev/sdb2
3、创建vg (从生成pv后的硬盘 创建类似一个虚拟硬盘的东西) 创建完毕 vgdisplay 能看到成果
vgcreate docker /dev/sdb2
4、创建两个lv(lv就是逻辑分区,上一步创建的vg 可以理解为一个虚拟硬盘,现在要对虚拟硬盘docker进行分区 lvdisplay 能看到分区结果
)
lvcreate --wipesignatures y -n thinpool -l 95%VG docker
lvcreate --wipesignatures y -n thinpoolmeta -l 1%VG docker
5、根据上一步的两个LV创建thin-pool(thinpool 是docker storage能用的)
lvconvert -y --zero n -c512K --thinpool docker/thinpool --poolmetadata docker/thinpoolmeta
6、配置thin-pool的自动扩展
修改lvm配置文件
vi/etc/lvm/profile/docker-thinpool.profile
如下:
activation{
thin_pool_autoextend_threshold=80
thin_pool_autoextend_percent=20
}
7、激活lv的配置文件
lvchange --metadataprofile docker-thinpool docker/thinpool
8、在docker启动配置文件
/etc/sysconfig/docker-storage
中添加或修改:
DOCKER_STORAGE_OPTIONS=--storage-driver devicemapper --storage-opt dm.fs=xfs --storage-opt dm.thinpooldev=/dev/mapper/docker-thinpool --storage-opt dm.use_deferred_removal=true
9、启动docker
启动前 先删除 rm -rivf /var/lib/docker/* (注意备份该文件夹 切记 该文件夹下有镜像 容器等文件 否则镜像需要重新构建或下载)
systemctl start docker.service
10、docker info 能查看到thinpool 已使用
http://blog.csdn.net/u014062332/article/details/54406849
相关推荐
在Linux系统,特别是CentOS环境下,使用Docker技术可以方便地构建和运行容器化应用程序。NVIDIA-Docker2是专为在Docker容器内利用NVIDIA GPU进行计算设计的工具,它允许用户在GPU驱动支持的环境中运行计算密集型任务...
也可以自己手动下载最新包,下载方法如下: mkdir /apps/docker-ce-v18 yum install --downloadonly --downloaddir=/apps/docker-ce-v18 \ yum-utils device-mapper-persistent-data lvm2 createrepo \ libseccomp ...
离线安装包,亲测可用
下面将详细介绍如何在CentOS 7.6系统下离线安装Docker CE和NVIDIA Docker2。 首先,我们需要了解Docker CE。Docker CE是Docker的社区版本,它提供了一个轻量级的虚拟化平台,使开发者可以打包他们的应用及其依赖包...
对于 CentOS 7,这个包名为 `docker-ce-18.06.1.ce-3.el7.x86_64.rpm`。确保将这个文件复制到你的离线系统中。 2. **配置 YUM 仓库**:在离线系统上,创建一个新的 YUM 仓库配置文件。例如,在 `/etc/yum.repos.d/`...
在本文中,我们将深入探讨如何在CentOS 7系统中离线安装Docker。Docker是一种流行的开源容器化平台,它允许开发人员打包他们的应用程序及其依赖项到一个可移植的容器中,以便在任何环境中轻松运行。对于那些无法连接...
在本文中,我们将详细介绍如何在 Linux 下的 CentOS 7 系统中部署 Docker。 Docker 是一个开源的容器化平台,能够帮助用户快速部署、运行和管理应用程序。 CentOS 7 是一个流行的 Linux 发行版,本文将指导您如何在 ...
在Linux系统,特别是CentOS上安装Docker Compose是一个重要的步骤,因为它可以帮助我们管理和运行基于Docker容器的应用程序。Docker Compose是一个工具,它允许我们通过YAML配置文件来定义和运行多容器的Docker应用...
在安装过程中,可以将默认容器类型设置为Windows容器,也可以在安装后更改类型。 Linux系统中的安装方法(以CentOS7为例): 更新系统软件包并安装必要的软件包,如yum-utils、device-mapper-persistent-data...
下载完成后,将这些文件复制到离线环境中的目标机器上,比如放入一个名为`docker_centos`的目录中。 接下来,我们将按照以下步骤进行离线安装: 步骤1:更新系统 在开始安装Docker之前,确保你的系统是最新的,这...
离线安装包,亲测可用
离线安装包,亲测可用
离线安装包,亲测可用
CentOS 下使用 Docker 部署 .NET Core 项目 本文将详细介绍如何在 CentOS 系统中使用 Docker 部署 .NET Core 项目,涵盖 Docker 的安装、 .NET Core 程序的安装、Nginx 的配置等重要知识点。 一、基本知识储备 在...
离线安装包,亲测可用
本教程将深入讲解如何在CentOS 7.2系统上离线安装Docker CE(Community Edition)17.06.0.ce-1.el7.centos版本,以及处理相关依赖。 首先,我们需要理解CentOS 7.2作为Linux发行版,它支持Docker的运行。Docker CE...
离线安装包,亲测可用
离线安装包,亲测可用
以下是 Centos 7 下 Docker 的安装过程,包括安装环境的清理、Docker 的后续升级与卸载过程。 一、安装环境准备 在安装 Docker 之前,我们需要准备好安装环境。首先,我们需要删除之前的安装包,如果有: $ sudo ...
安装必要的一些系统工具yum install -y yum-utils device-mapper-persistent-data lvm2 添加软件源信息yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 安装...