linux cpu占用率如何看
198
2022-10-30
Docker容器之基础管理
Docker介绍
是一种轻量级的“虚拟机” 在Linux容器里运行应用的开源工具
Docker与虚拟机的区别
虚拟机是在一台物理机器上,利用虚拟化技术,虚拟出来多个操作系统,每个操作系统之间是隔离的。Docker是开源的应用容器引擎,依然需要先在电脑上安装操作系统,然后安装Docker容器的管理器,才可以。虚拟机是在硬件级别进行虚拟化,而Docker是在操作系统的层面虚拟化;虚拟机是通过模拟硬件搭建操作系统
Docker的使用场景
打包应用程序简化部署 可脱离底层硬件任意迁移 例:服务器从腾讯云迁移到阿里云
Docker核心概念
镜像 容器 仓库
CentOS安装Docker的两种方式
使用curl获得docker的安装脚本进行安装 使用yum仓库来安装docker
docker的安装
设置镜像源,安装docker
[root@localhost ~]# yum install -y \ > yum-utils \ //设置源工具 > device-mapper-persistent-data \ //映射工具 > lvm2 [root@localhost ~]# yum-config-manager --add-repo //加载阿里云镜像源 [root@localhost ~]# yum install docker-ce -y //安装docker容器 [root@localhost ~]# systemctl stop firewalld.service [root@localhost ~]# setenforce 0 [root@localhost ~]# systemctl start docker //开启docker容器 [root@localhost ~]# systemctl enable docker //设置开机自启动 [root@localhost ~]# ps aux | grep docker //查看docker进程是否开启 [root@localhost ~]# docker version //查看版本 [root@localhost ~]# docker search nginx //搜索公有镜像 [root@localhost ~]# docker pull nginx //下载镜像
进行镜像加速
限制cpu使用速率
通过--cpu-quota选项来限制cpu的使用率 通过修改配置文件cpu.cfs_quota_us实现
多任务按比例分享cpu
docker run --cpu-shares 1024 容器A docker run --cpu-shares 1024 容器B docker run --cpu-shares 2048 容器C
使用--cpuset-cpus选项限制cpu内核使用权
[root@localhost opt]# docker run --cpu-quota 20000 nginx:latest //设置20%限定 [root@localhost opt]# cd /sys/fs/cgroup/cpu/docker/ [root@localhost opt]# cat cpu.cfs_quota_us -1 [root@localhost opt]# docker run -itd --name c1 --cpu-shares 512 paigeeworld/centos7 //创建容器c1设置权重,使得c1和c2的cpu资源占比为33.3%和66.7% ec4ab03a7969eebe4746cfe67184bc2c6f9c97e81b22bc2ffab452820a78a0a7 [root@localhost opt]# docker run -itd --name c2 --cpu-shares 1024 paigeeworld/centos7 c688b014329c6a33b0d66947f4489a1a1cb6febc321090ecb4a82b68ae6df250 [root@localhost opt]# docker ps -a //查看容器 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c688b014329c paigeeworld/centos7 "/bin/bash" About a minute ago Up About a minute c2 ec4ab03a7969 paigeeworld/centos7 "/bin/bash" About a minute ago Up About a minute c1 [root@localhost opt]# docker run --name c3 --cpuset-cpus 0,1 paigeeworld/centos7 //限制容器使用指定的cpu [root@localhost opt]# docker ps -a //查看容器的信息 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 751409a81682 paigeeworld/centos7 "/bin/bash" 8 seconds ago Exited (0) 7 seconds ago c3 [root@localhost opt]# docker run --name c5 -m 512m paigeeworld/centos7 //内存使用限制 [root@localhost opt]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8c3101668345 paigeeworld/centos7 "/bin/bash" 5 seconds ago Exited (0) 4 seconds ago c5
对blkio限制
--device-read-bps:限制某个设备的数据量 --device-write-bps:限制写入某个设备的数据量 --device-read-iops:限制读某个设备的次数 --device-write-iops:限制写入某个设备的次数 [root@localhost opt]# docker run -d --device-write-bps /dev/sda:30mb paigeeworld/centos7
docker的数据管理
数据管理操作
方便查看容器内产生的数据 多容器间实现数据共享
两种管理方式
数据卷 数据卷容器
数据卷
数据卷是一个提供容器使用的特殊目录
数据卷容器
数据卷容器就是一个普通的容器
数据卷共享(宿主机跟容器的共享)
[root@localhost ~]# docker pull centos //下载镜像 [root@localhost ~]# docker run -v /var/--name web1 -it centos /bin/bash //关联宿主机和容器的共享 [root@2483bee94f1a /]# cd data1/ [root@2483bee94f1a data1]# echo "123" > test01.txt [root@2483bee94f1a data1]# exit exit [root@localhost ~]# cat /var/ 123
数据卷容器共享(容器跟容器)
[root@localhost ~]# docker run --name web100 -v /data1 -v /data2 -it centos /bin/bash //创建一个web100容器并分别有两个卷为data1,2 [root@ba6a328c068e /]# cd data1/ [root@ba6a328c068e data1]# echo "111" > 111.txt //分别在目录中写入内容 [root@ba6a328c068e data1]# cd ../data2/ [root@ba6a328c068e data2]# echo "222" > 222.txt [root@ba6a328c068e data2]# exit exit [root@localhost ~]# docker run -it --volumes-from web100 -it centos /bin/bash //将新容器挂载数据卷容器web100 [root@3f64be49dadd /]# cat data1/111.txt 111 [root@3f64be49dadd /]# cat data2/222.txt 222
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~