docker容器引擎

1、安装docker

yum install docker

2、启动docker并设置为开机自动启动

systemctl start docker

systemctl enable docker

3、查看版本

docker version

4、修改为国内镜像源

vi /etc/docker/daemon.json

{

"registry-mirrors": ["http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn"]

}

一、关于镜像的操作

5、搜索镜像

docker search dhcp

-s --stars=x

6、获取镜像

docker pull 仓库名称[:标签]

7、查看镜像

docker images 仓库名称[:标签]

docker inspect 镜像ID号

8、添加新标签

docker tag 名称[:标签] 新名称[:标签]

9、删除镜像

docker rmi 仓库名称[:标签]

docker rmi 镜像ID号

10、存出镜像(需要从一台机器上的镜像迁移到另一台机器上的时候,需要将镜像保存成为本地文件)

docker save -o 存出文件名 存出的镜像

11、载入镜像

docker load --input 存出文件名

docker load < 存出文件名

12、上传镜像

docker push 仓库名称[:标签]

登录仓库

docker login --username=zx**** registry.cn-shenzhen.aliyuncs.com

上传之前后进行重命名

docker tag 原镜像名:版本号 registry.cn-shenzhen.aliyuncs.com/kgc_demo/docker_demo:[镜像版本号]

然后push

docker push registry.cn-shenzhen.aliyuncs.com/kgc_demo/docker_demo:[镜像版本号]

二、关于容器的操作

1、创建容器 (只是创建,并未启动)

docker create [选项] 镜像运行的程序

-i 让容器的标准输入保持打开

-t 让Docker分配一个伪终端

docker create -it docker.io/nginx /bin/bash

2、查看容器运行状态

docker ps [选项]

-a 列出最近一次启动的容器

3、启动容器

docker start 容器的ID/名称

4、创建并启动容器

docker run [选项] 镜像 运行的程序 执行的命令

-d在后台执行

5、终止容器

docker stop 容器的ID/名称

6、进入容器

docker exec [选项] 容器ID/名称 /bin/bash

7、导出容器 (从一台机器迁移到另一台机器)

docker export 容器ID/名称 > 文件名

8、导入容器

cat 文件名| docker import - 生成的镜像名称:标签

9、删除容器

docker rm [选项] 容器的ID/名称

三、Docker资源控制

1、CPU:

限制CPU的使用速率

echo 20000 > /sys/fs/cgroup/cpu/system.slice/docker-xxxxx/cpu.cfs_quota_us

查看容器对CPU的占用比例

docker stats

多任务按比例分享CPU

docker run/create -tid --cpu-shares 1024 镜像A

docker run/create -tid --cpu-shares 1024 镜像B

docker run/create -tid --cpu-shares 2048 镜像C

限制CPU的内核使用

docker run/create -tid --cpuset-cpus 0,1,2,3 镜像名

2、内存

docker run/create -tid -m 512MB 镜像名

3、blkio

docker run/create -tid --device-write-bps /dev/sda:1MB 镜像名

docker run/create -tid --device-read-bps /dev/sda:1MB 镜像名

相关推荐
mseaspring3 小时前
一款用于监控跨多台主机 Docker 容器的实时终端
运维·docker·容器
深圳市九鼎创展科技3 小时前
MT8883 vs RK3588 开发板全面对比:选型与场景落地指南
大数据·linux·人工智能·嵌入式硬件·ubuntu
NineData3 小时前
NineData 亮相香港国际创科展 InnoEX 2026,以 AI 加速布局全球市场
运维·数据库·人工智能·ninedata·新闻资讯·玖章算术
RisunJan4 小时前
Linux命令-ngrep(方便的数据包匹配和显示工具)
linux·运维·服务器
.千余4 小时前
【Linux】基本指令3
linux·服务器·开发语言·学习
热爱Liunx的丘丘人4 小时前
Ansible-doc及常用模块
linux·运维·服务器·ansible
SPC的存折5 小时前
D在 Alpine 容器中手动搭建 Discuz 全攻略(包含镜像一键部署脚本,可直接用)
linux·数据库·mysql·缓存
tianyuanwo5 小时前
OS/DevOps程序员切入Harness Engineering的入门与进阶指南
运维·devops·harness
飞飞传输5 小时前
国产化FTP替代方案哪个好?选对平台让传输更安全高效
大数据·运维·安全
一生了无挂5 小时前
自己编译RustDesk,并将自建ID服务器和key信息写入客户端
运维·服务器