Docker常用命令
一、镜像
-
拉取镜像(默认仓库为https://registry.hub.docker.com/)
docker pull image_name:tag # 不加tag默认latest
-
查看本地镜像
docker images
-
运行镜像(会创建一个容器)
docker run image_name/image_id
-
运行镜像/容器时参数说明
- -i 让容器的标准输入保持打开
- -t 让docker分配一个伪终端并绑定到容器的标准输入上,一般情况下 -it一起使用
- -v 创建一个数据卷挂载到容器中,可以通过此参数将宿主机目录挂载到容器中,如 -v /root/maven:/maven 将宿主机中的根目录下root目录中的maven目录挂载到容器里的根目录下的maven目录中。
- -d 后台运行容器,并返回容器ID
- -p 指定端口映射
- –-name 为容器指定一个名称
-
进入镜像
不可以通过命令直接进入镜像,必须先运行镜像,然后进入相关容器,也可以通过如下命令运行容器并进入:
docker run -it image_name/image_id /bin/bash
-
删除镜像
docker rmi image_name/image_id
-
删除所有未被使用的镜像
docker image prune
-f 强制删除,不提示信息
-
修改镜像
先启动容器,如将宿主机的某一目录挂载到容器中:
docker run -it -v /root/maven:/maven image_name/image_id /bin/bash
进入容器,可以进行一系列操作,操作修改后exit退出
然后使用commit命令来提交更改:
docker commit -m '提交的描述信息' container_id A:tag
镜像id 目标镜像的仓库名(A)和tag信息(tag)
执行成功后会返回镜像ID,可以使用docker images查看改镜像ID、仓库名和tag信息
-
使用DockerFile创建镜像
docker build -f dockerfile_path -t image_name --no-cache
-f 指定dockerfile文件路径
-t 指定镜像名称
--no-cache 禁止使用缓存
二、容器
-
查看运行的容器
docker ps
-
查看所有容器(包含未运行的)
docker ps -a
-
启动、停止、重启容器
docker start container_name/container_id
docker stop container_name/container_id
docker restart container_name/container_id
-
进入容器
docker exec -it container_name/container_id /bin/bash
-
删除容器
docker rm container_name/container_id
-
删除所有未使用的容器
docker container prune -f
-f 表示强制删除,不显示提示信息
-
查看容器日志
docker logs container_name/container_id
三、仓库
四、Docker基础知识
一、 Docker介绍
Docker可以实现快速部署,直接发布到register上,不会出现在一台机器上可以运行,在另一台上不可以运行的情况。Docker可以做到秒级i启动,对系统资源的利用率更高。
二、 Docker构成
Docker daemon 在宿主机上运行,Docker守护进程
Dokcer client Docker命令行工具,用户通过docker client与docker deamon通信。也可以使用本地的docker client与远程的docker daemon进行通信
Docker image 镜像是只读的,镜像中包含由需要运行的文件。镜像用来创建container,一个镜像可以运行多个container;镜像可以通过Dockerfile创建,也可以从Docker hub/registry上下载
Docker container Docker容器时Docker的运行组件,启动一个镜像就是一个容器,容器是一个隔离环节,多个容器之间不会相互影响,保证容器中的程序运行在一个相对安全的环境中。
Docker hub/registry 共享和管理Docker镜像,用户可以上传或下载镜像,也可以搭建自己私有的Docker registry
三、 常用命令
1) 重新加载配置
systemctl daemon-reload
2) 重启docker
Systemctl restart docker
3) 查看版本
Docler version
4) 查看docker信息
Docker info
5) 查找Docker Hub上的hello-world镜像
Docker search hello-world
6) 将image文件从registry仓库下载到本地,镜像保存在/var/lib/docker目录下
Docker pull library/hello-world
7) 查看镜像
Docker images
8) 运行镜像,运行镜像时会创建一个contaioner
Docker run hello-world
9) 删除镜像,删除镜像时,必须先将镜像所有的container删除
Docker rmi docker.tomcat:7.0.77-jre7 或者 docker rmi b39c68b7af30
10) 查看那些容器正在运行
Docker ps
11) 查看所有的容器,包括已经停止的容器
Docker ps -a
12) 启动、停止、启动容器
Docker start container_name/container_id
Docker stop container_name/container_id
Docker restart container_name/container_id
13) 启动后,进入容器
Docker attach container_name/container_id
docker exec -it container_id /bin/bash
14) 删除容器
Docker rm container_name/container_id
15) 停止所有容器
Docker rm $(docker ps -a -q)
16) 通过dockerfile构建image
Docker build -t springboot-docker
17) 指定dockerfile文件路径
Docker build -f /path/to/a/Dockerfile
18) 登录,根据提示输入用户名和密码
Docker login
19) 上传镜像
Docker push xichuan/springboot-docker:first
20) 查看镜像元数据
Docker inspect xichuan/springboot-docker:first
21) 查看容器日志情况
Docker logs 容器ID

浙公网安备 33010602011771号