Docker常用命令
镜像操作
Docker images :列出本机现有的镜像列表
[root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest fce289e99eb9 15 months ago 1.84kB
REPOSITORY :镜像名
TAG:标签
IMAGE ID :镜像ID
CREATED: 镜像创建时间
SIZE:镜像大小
同一个仓库源矿业有多个TAG标签,代表这个仓库源有多个不同的版本,我们使用REPOSIDTORY:TAG来定义不同的版本的镜像。
docker search *** 查找所需镜像,下载数量多的
例子:
docker search -s 300 tomcat 点赞数超过300的tomcat镜像
docker pull tomcat 下载镜像, 不加任何参数,代表下载最新的【docker pull tomcat:latest】
备注:docker pull tomcat:3.2 就是下载3.2版本的。
docker rmi 镜像名或者镜像ID,
docker rim -f hello-world
docker rim -f hello-world nginx 删除多个。
docker rmi -f $(docker images -qa) 全部删除
容器操作
docker ps :查看当前运行的容器
docker run -it centos --name'
[root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE tomcat latest e36064f7c6f0 47 hours ago 528MB centos latest 470671670cac 2 months ago 237MB [root@localhost ~]# docker run -it --name mycentos7 470671670cac
-i: 以交互式运行当前容器
-t: 打开交互式窗口
docker run -d 以守护进程的方式启动容器并后台运行。
退出交互式窗口
exit :关闭容器并退出
ctrl +p+q :退出容器,但不关闭容器
--name :为容器添加 名称
docker start 容器id 启动容器
docker restart 容器id 重启容器
docker stop 容器id 停止容器
docker kill 容器 id 强制停止容器
docker rm 容器id 删除停止的容器
docker rm -f ¥(docker ps -qa) 删除全部的容器
docker ps -qa|xargs docker rm 删除全部的容器。
docker logs -ft --tall 容器名 t:时间戳,f :跟随最新的日志打印 ,tall 显示最后多少条 【查查容器的日志】
docker logs -ft --tall 3
docker top 容器id 查看当前容器内的进程
docker inspect 容器id 查看容器内部的细节。
docker attach 正在运行的容器id 进入正在运行的容器。
docker exec -t 容器id 操作正在运行的容器 并返回结果
例子:docker exec -t 10b9a34559ab9 ls -l /tmp 针对这个容器,直接运行此命令,未进入交互窗口
例1:从当前容器中拷贝 文件至宿主机。
解:docker cp 容器进程ID:/tem/test.log /home/test/ [源目录,至,目标目录]
备注:
[root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 52d65a5bdb95 centos "/bin/bash" About a minute ago Up About a minute nifty_raman [root@localhost ~]# docker cp 52d65a5bdb95:/home/test.log /tmp
启动镜像并分配端口:
docker run -it -p 8888:8080 tomcat :启动tomcat,外部访问端口为8888,实际tomcat开放端口为8080
把修改后的容器作为一个新的镜像
[root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e0d9081d7418 python "python3" 33 seconds ago Up 25 seconds 0.0.0.0:8089->8083/tcp determined_sutherland [root@localhost ~]# docker commit -a='sjc' -m='my test file' e0d9081d7418 sjc/python3test:1.8 sha256:1a6466fed24c511e63f739ea9e9d8e010a6723b5f6acfb68534737c4c9e7cd3b [root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE sjc/python3test 1.8 1a6466fed24c 18 seconds ago 934MB tomcat latest e36064f7c6f0 6 days ago 528MB python latest d47898c6f4b0 7 days ago 933MB centos latest 470671670cac 2 months ago 237MB
ps: -a 作者 -m :调教的描述。
进入容器后,可以修改容器的配置,修改完成之后。运行docker commit命令进行镜像的提交生成新的镜像
例子: docker commit -a='sjc' -m='this test imgage' e0d9081d7418 aliyun/centos:7.8
注释:docker commit -a="作者" -m="描述信息" 运行的容器 ID. 镜像名及镜像标签
浙公网安备 33010602011771号