- 进入容器的方法:
docker exec -it 容器id/name /bin/bash
- 如果在容器中使用了exit来退出,会把容器关闭了,需要使用
来开启容器,然后再使用上面那句进入即可(docker stop容器之后需要再使用start开启容器,否则使用exec是进不去的)docker start 容器名
- 删除一个容器:
docker rm 容器id/name docker stop 容器id/name
- 退出容器但不停止容器,依次执行:
ctrl+P ctrl+q
- 容器重命名:
docker rename 容器原名 new_name
- 将镜像变为可使用cuda的容器(前提:宿主机安装的docker版本是19后的):
docker run --gpus all 镜像
-
docker中容器和镜像的关系:
-
镜像可以看做java中的类,但容器可以看做是类的实例化对象;一个类可以有多个对象,一个镜像也可以有多个容器。
-
docker的整个生命周期有三部分组成:镜像(image)+容器(container)+仓库(repository)
-
docker容器=镜像+可读层
-
容器服务运行的过程中,基于原始镜像做了改变,比如安装了程序,添加了文件,也可以提交回去 (commit)成为镜像。(实践发现:好像文件并没有保存,但配置的环境都保存了)
-
docker 实际是由一层一层的系统文件组成,这种层级的文件系统称为UnionFS(统一文件系统),镜像可以基于dockerfile构建,dockerfile是一个描述文件,里面包含了若干条密令,每条命令都会对基础文件系统创建新的层次结构。
-
镜像是只读的,可以理解为静态文件
-
相对于镜像来说容器是动态的,容器在启动的时候创建了一层可写层次作为最上层。
-
强制删除一个镜像:docker rmi -f 镜像名称:tag
-
删除所有未被tag和未被容器使用的镜像:docker image prune
-
docker仓库:
-
用来包含镜像的位置,docker提供了一个注册服务器(register)来保存多个仓库,每个仓库又可以包含多个具备不同tag的镜像
-
docker运作中使用的默认仓库是docker hub公共仓库
- 仓库支持的操作类似git,当用户创建了自己的镜像之后就可以使用push命令将它上传到共有或者私有的仓库。这样下次再另外一台机器上使用这个镜像的时候只需要从仓库里面pull下来就可以了
- 登陆docker仓库,docker login 用户名: 密码:
-
-
docker的使用笔记
最新推荐文章于 2024-11-08 22:12:29 发布