Docker学习【2】Docker容器

Docker容器

一、容器运行

1、容器运行

#docker run 是docker create与docker start命令的集合体,运行容器时先基于镜像创建容器,然后启动容器。

(1)启动新容器并打印日期

img

#运行的新容器也是一个进程,使用ps查看进程

img

(2)指定参数,分配bash交互终端

img

(3)docker run参数

img

#运行容器并设置环境变量

img

(4)自动启动容器

img

img

#添加--restart参数后容器终止被自动启动

(5)自定义名称的容器

img

#删除容器

img

img

(6)开启端口的容器

img

(7)使用curl工具访问容器终端

img

img

#终止容器、再次访问

img

##服务由docker容器提供,通过宿主机的端口向外网开放

(8)与宿主机共享目录的容器

#创建

img

#创建共享该目录的容器

img

#运行容器,并挂载共享目录,冒号前面的是宿主机目录,后面的是容器目录

二、进入容器

1、容器的三种状态

#运行状态(Up)、暂停状态(Paused)、终止状态(Exited)

(1)#运行状态

img

(2)#暂停状态

img

##暂停容器的本质是暂停容器中的服务

img

##docker unpause 是暂停状态的容器终止暂停

img

(3)#终止状态

img

2、docker attach与docker exec

#原生方式进入容器

(1)docker attach进入正在运行的虚拟输入设备

img

#Crul+P+Q退出容器不终止

img

(2)docker exec在宿主机上向*运行的容器*传输命令

img

#使用docker exec 命令进入容器执行exit命令不会终止容器

img

三、停止和删除容器

1、停止容器

(1)docker kill命令强制终止容器

img

(2)查看容器状态

img

(3)使用正则表达式根据运行状态的ID号关闭正在运行的容器

img

#另外的一种编写方法:

img

2、删除容器

#docker rmi 命令删除镜像

#docker rm 命令删除容器

(1)删除容器方法一

img

(2)删除容器方法二

#先创建三个容器,并启动其中一个:

img

#删除终止态的容器

img

#强制删除

img

(3)删除容器方法三

img

(4)删除容器方法四

#创建测试容器

img

# docker container prune:删除所有终止状态的容器

img

四、容器资源限制

1、限制容器内存资源:

#线程分配的内存没有超出最大限额

img

#线程分配的内存超出了最大限额

img

2、限制容器CPU资源

#运行两个容器并设置CPU权重

img

#使用docker starts 查看容器占用CPU情况

img

img

#使用agileek/cpuset-test镜像测试给容器指定某一棵CPU

img

3、限制容器Block I/O

(1)运行容器test001、test002、test003,其中,test001、test002读写磁盘的带宽是test003的两倍。

img

img

img

(2)运行容器,并限制容器对/dev/sda的写入速率

img

##查看写入速率

img

(3)运行容器,不限制容器对/dev/sda的写入速率

img

posted @ 2024-04-18 20:10  朝暮青丝  阅读(8)  评论(0编辑  收藏  举报