扩展:
Docker架构为CS架构
镜像:Docker把应用、依赖、函数库、环境一起打包。
容器:镜像中的应用运行后形成的进程为容器(Docker会给每个镜像做隔离)。
Docker镜像命名 [repository]:[tag]
解释:repository就是需要拉取的镜像应用,tag就是拉取镜像应用的版本。如:mysql:5.7,就是mysql的5.7版本镜像应用。若只有mysql,如:mysql,代表mysql的最新版本镜像应用。
镜像命令:
1. docker --help 查看所有命令
2. docker xxx --help 查看某个命令的所有命令
当不知道一个命令怎么写的时候,可以用docker xxx --help来查看命令的使用。
如:查询save命令的使用
解释:Usage后面为用法,Options为属性说明。
3. docker pull xxx 拉取镜像应用xxx
如:nginx的镜像应用拉取
说明;这里没有指明镜像应用的版本,说明为最新版本的nginx版本。
4. docker images 查看镜像
解释:REPOSITORY:镜像、TAG:镜像应用的版本、IMAGE ID:镜像应用的ID、CREATED:镜像应用的创建时间(是指DockerHub创建该镜像应用的时间)、SIZE:镜像大小。
5. docker save -o xxx.tar yyy 把yyy镜像保存到名为xxx.tar的文件
如:保存nginx到nginx.tar
说明:-o表示:output输出, nginx.tar:把保存的镜像存储到这个文件里。 nginx:需要保存的镜像应用。
6. docker rmi xxx 删除xxx镜像
如:删除nginx镜像
说明:rmi:remove image删除镜像。 nginx要被删除的镜像。
7. docker load -i xxx.tar 加载xxx镜像包
如:
说明:-i:input输入,nginx.tar表示要加载的文件
8. ll 查看
容器命令:
1. docker run 创建并运行一个容器
镜像应用容器的运行一般去dockerhub上去寻找,这里以nginx为例子。
如: docker run --name containerNmae -p 80:80 -d nginx
解读:
docker run :创建并运行一个容器
--name:给容器起个名字
-p:宿主机端口与容器端口映射,冒号左边是宿主机端口,冒号右边是容器端口
-d:后台运行容器
nginx:镜像名称
如:
解释:创建nginx镜像映射的一个容器名为nginx,容器端口80映射到宿主机端口80,并在后台运行。
. docker stop 容器停止运行
如:
docker stop nginx 其中nginx为容器名称
. docker start 容器开始运行
docker start nginx 其中nginx为容器名称
. docker ps 查看所有的运行的容器和状态
注:docker ps 默认查询正在运行的全部容器,要想查询全部的如docker ps -a
如:
解释:CONTAINER ID:容器id、IMAGE:镜像名称、PORST:端口映射、NAMES:端口名称。
7. docker logs 查看容器运行日志
如:
说明:docker logs nginx,其中nginx为容器的名称。
docker logs -f nginx 为实时日志
8. docker exec 进入容器执行命令
如:docker exec -it nginx bash
解释:
docker exec:进入容器内部,执行一个命令
-it:创建一个标准的输入输出终端,允许交互
nginx:容器的名称
bash:进入容器后执行的命令,bash是一个linux终端交互命令。
9. docker rm 删除容器
注:docker rm xxx 其中xxx为容器名称,docker rm不能删除正在运行的容器。若加上-f,就可以删除正在运行的容器。如docker rm -f xxx。