Docker学习笔记(二)Docker的常用命令

docker的常用命令

docker帮助命令

docker version  #显示docker的版本信息
docker info #显示docker的系统信息,包括镜像和容器的数量
docker 命令  --help  #帮助命令

docker的镜像命令


docker pull 镜像名称 #拉取镜像 
docker pull 镜像名[:版本]


docker images # 查看所有本机的镜像
[root@localhost /]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
tomcat              latest              1b6b1fe7261e        11 days ago         647MB
hello-world         latest              bf756fb1ae65        4 months ago        13.3kB

#解释
REPOSITORY  镜像的仓库源
TAG         镜像的标签
IMAGE ID    镜像的id
CREATED     镜像的创建时间
SIZE        镜像的大小
#可选项
-a  #列出所有镜像
-q  #只显示镜像的id
docker search 搜索镜像
docker search 镜像名称   #搜索镜像  比如:docker search mysql

docker rmi 删除镜像

docker rmi 镜像id或镜像名   #删除镜像
docker rmi -f 镜像id 镜像id 镜像id #删除多个镜像
docker rmi -f $(docker images -aq) #删除全部的镜像

docker的容器命令

新建容器并启动

docker run [可选参数] images /bin/bash

#参数说明
--name="Name" 容器名字 tomcat01 tomcat02 用来区分容器
-d            后台方式运行
-it           使用交互方式运行,进入容器查看内容
-p            指定容器的端口  -p 8080:8080
	-p 主机端口:容器端口 (常用)
	-p 容器端口

#从容器中退回主机
exit

列出所有的运行的容器

docker ps #查看当前运行的所有容器
docker ps -a  #查看所有运行的容器+历史运行过的容器
docker ps -aq #查看所有的容器编号

退出容器

exit #容器停止并退出
Ctrl + P + Q #容器不停止退出

删除容器

docker rm 容器id #删除指定的容器,不能删除正在运行的容器
docker rm -f $(docker ps -aq) # 删除所有的容器
docker ps -a -q|xargs docker rm  #删除所有的容器

启动和停止容器的操作

docker start 容器id  #启动容器
docker stop 容器id   #停止当前正在运行的容器
docker restart 容器id  #重启容器
docker kill  容器id    #强制停止当前容器

其他常用命令

后台启动容器

docker run -d images  #后台运行
#容器使用后台运行,就必须要用前台进程,docker发现没有应用,就会自动停止

查看日志

#显示日志
--tf  #显示日志
--tail number  #要显示日志条数
docker logs -tf --tail 容器id

查看容器中的进程信息

# 查看进程信息
docker top 容器id

查看容器的源数据

#查看容器的源数据
docker inspect 容器id

进入当前正在运行的容器

#方式一
docker exec -it 容器id /bin/bash
#方式二
docker attach 容器id

#docker exec   #进入容器后开启一个新的终端,可以在里面操作(常用)
#docker attach #进入容器正在执行的终端,不会启动新的进程

从容器内拷贝文件到主机上

docker cp 容器id:容器内路径 目的的主机目录

装个tomcat

#下载tomcat
docker pull tomcat:9.0

#启动运行
docker run -d -p 8080:8080 --name tomcat02 tomcat

#进入容器
docker exec -it tomcat02 /bin/bash

#发现问题
没有webapps


commit镜像

docker commit  #提交容器成为一个新的副本

docker commit -m="提交的描述信息" -a="作者" 容器id 目标镜像名:[version]

实战测试

# 1、启动一个默认的tomcat
# 2、发现这个默认的tomcat是没有webapps应用的, 镜像原因,官方的镜像默认webapps下面是没有文件的
# 3、我自己拷贝进去了基本的文件
# 3、将我们操作过的容器通过commit提交一个镜像!我们以后就使用我们修改过的镜像即可,这就是我们自己的一个修改的镜像
[root@localhost /]# docker commit -m="add webapps app" -a="yiming" d49e7ef88130 mytomcat:1.0
sha256:e34f0f60653ed0ed3d8e82c256c36b55fa9a67a45f5269d106d705855c6bc959

查看镜像

[root@localhost /]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
mytomcat            1.0                 e34f0f60653e        36 seconds ago      652MB
tomcat              latest              1b6b1fe7261e        11 days ago         647MB
hello-world         latest              bf756fb1ae65        4 months ago        13.3kB

如果想要保存当前容器的状态,就可以通过commit来提交,获得一个镜像

你可能感兴趣的:(Docker,docker,linux,java)