背景
docker run了之后做了哪些事情?
启动docker
[root@second ~]# systemctl start docker #使用这个命令不起作用
bash: systemctl start docker: command not found...
[root@second ~]# docker version
Client: Docker Engine - Community
Version: 20.10.3
API version: 1.41
Go version: go1.13.15
Git commit: 48d30b5
Built: Fri Jan 29 14:34:14 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
[root@second ~]# service docker start
Redirecting to /bin/systemctl start docker.service
底层原理
Docker是一个Client-Server结构的系统,Docker的守护进程运行在主机上。通过Socket从客户端访问.(如同我们访问mysql是一样,mysql需要一个服务端一直启动折,然后再有一个客户端去访问)
DockerServer接收到Docker-Client的指令,就会执行这个命令。
Docker为什么比虚拟机快?
1、Docker有着比虚拟机更少的抽象层;
2、Docker利用的是宿主机的内核,虚拟机需要Guest OS;
所以说,新建一个容器的时候,docker不需要像虚拟机一样重新加载一个操作系统,避免引导。虚拟机是加载Guest OS,分钟级别的 非常慢;
而Docker是利用咱们的宿主机的操作系统,省略了这个复杂的过程,启动秒级。
通常容器都是使用后台方式运行的,需要进入容器,修改一些配置。
命令1:
docker exec -it 容器id bashshell #docker exec -it 代表以交互模式运行
镜像命令:
docker images 查看所有本地的主机上的镜像
docker search 搜索镜像
docker search mysql
# 启动docker
[root@second ~]# docker ps
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
[root@second ~]# systemctl start docker
# 删除镜像
docker rmi -f 镜像id # 删除指定镜像
docker rmi -f 镜像id 镜像id 镜像id #同时删除多个镜像
docker rmi -f $(docker images -aq) #删除全部镜像
容器命令
说明:有了镜像才可以创建容器,linux,下载一个centos镜像来测试学习。
docker pull centos
本文节选自第七十六期《51测试天地》
《Docker常用基本命令》一文
想继续阅读全文或查看更多精彩内容,请点击下载: