快速记忆
docker命令
1、镜像命令
我可以从远程仓库里面搜索镜像(docker search)然后下载到本地(docker pull)然后列出本地所有的镜像(docker images),本地镜像多了可以删除多余的镜像(docker rmi)
2、容器命令
我可以运行某个镜像(docker run),镜像运行起来就是容器了,然后列出所有容器(docker ps ),查看某个容器的日志(docker logs),查看某个容器内的细节(docker inspect),可以把容器内的东西拷贝到宿主机(docker cp),然后可以停掉某个容器(docker stop),可以删除某个容器(docker rm)
3、容器命令—交互式和守护式
交互式容器允许用户直接进入容器内部执行命令;而守护式容器则在后台运行。
交互式:使用docker run -it 镜像ID/镜像名
命令来创建和启动交互式容器。
守护式:使用docker run -d 镜像ID/镜像名
命令来创建和启动守护式容器。
如果需要与守护式容器进行交互,可以使用docker exec -it 容器ID /bin/bash
命令进入容器。
docker cp命令
docker数据卷
1)docker run -it -v /宿主机绝对路径目录:/容器内绝对路径目录 镜像名
- 解释:-v中的v是volumn的缩写。
- 这个命令的含义就是将
宿主机的某个目录
和容器内的某个目录
进行关联,有了这层关联以后某一处发生了更改另一处也会发生一模一样的更改。 - 进一步,当你把容器停掉,对主机内的该目录进行修改,然后再次启动容器,容器内和宿主机关联的目录会同步更新吗?会的,所以很安全。
2)dockerFile的方式添加数据卷
DockerFile
Docker镜像是Docker容器的源代码,DockerFile是镜像的源码。
编写Dockerfile文件 -> docker build —> docker run
DockerFile的保留字
FROM+基础镜像
,表示当前镜像是基于哪个镜像的,FROM scratch其中scratch是所有镜像的祖先类
RUN+容器构建时需要运动的命令
EXPOSE+端口号
,表示该镜像变成实例对外启动以后暴露的端口号
WORKER+目录
,表示启动该容器后你的落脚点就是该目录,"WORKER /"表示你登录该镜像后就是默认在根目录下
ENV MY_PATH /usr/mytest
就是说$MY_PATH就是/usr/mytest
那么你可以在其它指令中直接使用这些环境变量,比如:WORKDIR $MY_PATH
COPY指令
能够将主机本地的文件或目录
,复制到镜像文件系统。
ADD指令
不仅能够将主机本地的文件或目录
,而且能够将远程URL所对应的文件或目录
,作为资源复制到镜像文件系统。
ADD会自动处理URL和解压tar压缩包
,可以认为ADD是增强版的COPY。
CMD+命令
,指定一个容器启动时要运行的命令
ENTRYPOINT+命令
,和CMD一样都是指定一个容器启动时要运行的命令
注意:DockerFile中可以有很多个CMD命令,但是只有最后一个生效,最后一个会把之前的都覆盖;而ENTRYPOINT相当于追加
一、Docker命令
1、镜像命令
我可以从远程仓库里面搜索镜像(docker search)然后下载到本地(docker pull)然后列出本地所有的镜像(docker images),本地镜像多了可以删除多余的镜像(docker rmi)
(1)docker images 列出所有镜像
docker images -a 列出本地所有的镜像
docker images -q 列出本地所有的镜像且只显示镜像ID
(2)docker search 搜索镜像
docker search tomcat 搜索dockerhub上面的所有tomcat镜像
(3)docker pull 下载镜像
docker pull tomcat:3.2 下载镜像tomcat:3.2
(4)docker rmi -f 删除镜像
docker rmi -f nginx redis 删除nginx和redis镜像
docker rmi -f ${docker images -qa} 删除本地所有镜像
2、容器命令
我可以运行某个镜像(docker run),镜像运行起来就是容器了,然后列出所有容器(docker ps ),查看某个容器的日志(docker logs),查看某个容器内的细节(docker inspect),可以把容器内的东西拷贝到宿主机(docker cp),然后可以停掉某个容器(docker stop),可以删除某个容器(docker rm)
交互式和守护式
交互式容器允许用户直接进入容器内部执行命令;而守护式容器则在后台运行。
交互式:使用docker run -it 镜像ID/镜像名
命令来创建和启动交互式容器。
守护式:使用docker run -d 镜像ID/镜像名
命令来创建和启动守护式容器。
如果需要与守护式容器进行交互,可以使用docker exec -it 容器ID /bin/bash
命令进入容器。
1、运行容器—交互式
docker run -it 镜像ID/镜像名
docker run -it进入容器后想退出怎么办?
Ctrl+P+Q会退出容器且不停止容器,输入exit会停止并退出容器