拉取镜像
docker pull [镜像地址] #【镜像地址]一般由[镜像名]:[标签]组成,标签一般指的版本号,默认为latest。例如:ubuntu:20.04
创建并运行新容器
使用拉取的镜像创建并运行容器:
docker run -d --name <容器名> --gpus all -p <主机端口>:<容器端口> -v <宿主机目录或卷名>:<容器目录> <镜像名> sleep infinity
# -d: 后台运行容器
# --name: 指定容器名称
# --gpus: 指定GPU
# -p: 将主机端口映射到容器端口,格式为 主机端口:容器端口
# -v: 将宿主机目录或数据卷挂载到容器目录。宿主机目录用于直接挂载本地文件系统,而数据卷提供更高的灵活性和隔离性。
# sleep infinity: 保持容器运行
# 如果容器以创建可以使用以下命令启动容器:
docker start <容器名或ID>
查看容器
docker ps # 查看正在运行的容器 docker ps -a # 查看所有容器,包括已停止的
进入容器
docker exec -it <容器名> /bin/bash # 或者 /bin/sh # it: 是两个选项的组合: --interactive --tty # -i: 交互式操作 # -t: 为容器分配一个伪终端
停止和删除容器
docker stop <容器名或ID> docker rm <容器名或ID> docker stop $(docker ps -aq) # 停止所有容器 docker rm $(docker ps -aq) # 删除所有容器
保存容器状态为新镜像
docker commit <容器名或ID> <新镜像名>:<标签>
查看镜像
docker images
删除镜像
docker rmi <镜像名或ID> docker rmi -f <镜像名或ID> # 强制删除
导出和导入镜像
- 导出镜像为文件:
docker save -o <文件名>.tar <镜像名或ID>
- 从文件导入镜像:
docker load -i <文件名>.tar
- 检查容器日志
- 查看容器运行日志:
docker logs <容器名或ID>
- 实时查看日志:
docker logs -f <容器名或ID>
- 查看容器内进程:
docker top <容器名或ID>
- 检查容器的详细信息:
docker inspect <容器名或ID>
- 清理无用的资源
- 清理未使用的镜像、容器、网络和卷:
docker system prune
- 清理未使用的卷:
docker volume prune