Docker
技.技术研究182 阅读约 8 分钟
- 镜像
- dockerhub 拉取镜像
- docker pull
- docker pull
- 查看所有镜像
- docker image ls
- -a: 显示全部镜像
- -q: 只显示id
- rm image1 image2: 删除镜像
- rm -f image1 image2: 强制删除镜像
- rm -f $(docker image ls -aq)
- 查看镜像详情
- Docker image inspect <镜像名字>
- 保存镜像(将我们的镜像 保存为tar 压缩文件 这样方便镜像转移和保存 ,然后 可以在任何一台安装了docker的服务器上 加载这个镜像)
- docker save 镜像名/镜像ID -o 镜像保存在哪个位置与名字
- 示例:docker save tomcat -o /myimg.tar
- docker save 镜像名/镜像ID -o 镜像保存在哪个位置与名字
- 加载镜像(任何装 docker 的地方加载镜像保存文件,使其恢复为一个镜像)
- docker load -i 镜像保存文件位置
- 打包镜像
- 打包镜像需要Dockerfile 文件
- docker image build -t <新镜像名字>
- 指定dockerfile路径:docker image build -f Dockerfile.bad
- --build-arg VERSION=2.0.0: 可以覆盖dockerfile内的ARG VERSION
- 查看镜像分层
- Docker image history <镜像id、名字>
- 提交到dockerhub
- Docker push zzlwte/image
- 自己提交一个镜像
- docker commit -m="提交信息" -a="作者信息" 容器名/容器ID 提交后的镜像名:Tag
- 清除所有无容器使用的镜像
- 此命令只要是镜像无容器使用(容器正常运行)都会被删除,包括容器临时停止
- docker system prune -a
- 镜像标签
- docker tag 源镜像名:TAG 想要生成新的镜像名:新的TAG
- 如果省略TAG 则会为镜像默认打上latest TAG
- docker tag 源镜像名:TAG 想要生成新的镜像名:新的TAG
- dockerhub 拉取镜像
- 容器
- 创建容器
- Docker container run --name
sh - -d(-detach):在后台运行容器,并且打印容器id
- -it: 表示与容器进行交互式启动
- -itd:等于(-d)+(-it)
- -p: 指定端口映射,格式为:主机(宿主)端口:容器端口
- --name nginx1.18: 为容器指定一个名称
- -e username="ritchie": 设置环境变量
- -v 数据挂载: 宿主机文件存储位置:容器内文件位置
- --rm 就像 bash 中的 rm 命令一样,它会删除容器,但这里它会在该容器退出时进行删除
- sh:交互式路径
- docker服务启动而自动启动
- --restart=always
- Docker container run --name
- 查看所有容器
- docker container ls
- docker container ls -a: 显示所有容器
- 进入容器
- Docker exec命令
- 使用 docker exec -it 容器id sh 进入容器并开启一个新的bash终端。 退出容器终端时,不会导致容器的停止
- docker exec -it 容器名/容器ID sh
- docker exec -it -w: 在工作目录中运行命令
- Docker attach命令
- 使用 docker attach 容器id 进入正在执行容器,不会启动新的终端, 退出容器时,会导致容器的停止。
- 当多个窗口同是attach到同一个容器的时候,所有窗口都会同步显示;当某个窗口因命令阻塞时,其他窗口也无法执行操作
- Docker exec命令
- 退出容器
- 直接退出 未添加 -d(持久化运行容器) 时 执行此参数 容器会被关: exit
- 优雅退出 --- 无论是否添加-d 参数 执行此命令容器都不会被关闭
- Ctrl + p + q
- 重启容器
- docker restart 容器ID/容器名
- 启动容器
- docker start 容器ID/容器名
- 停止容器
- docker container stop 容器名/容器ID
- 强制停止容器
- docker kill 容器ID/容器名
- 删除容器
- 删除全部容器:docker rm -f $(docker container ls -aq)
- 容器文件拷贝 —无论容器是否开启 都可以进行拷贝
- 从容器内 拷出
- docker cp 容器ID/名称: 容器内路径 容器外路径
- 从外部 拷贝文件到容器内
- docker cp 容器外路径 容器ID/名称: 容器内路径
- 从容器内 拷出
- 查看容器日志
- docker logs -f --tail=要查看末尾多少行 默认all 容器ID
- 修改其启动配置
- docker container update --restart=always 容器Id 或者 容器名
- 危不危险,这个容器有没有需要数据恢复的情况?自己考量吧!!!
- docker container update --restart=always 容器Id 或者 容器名
- 更换容器名
- docker rename 容器ID/容器名 新容器名
- 删除所有停止的容器
- docker system prune -f
- 查看容器进程情况
- docker container 容器id
- 创建容器
相关文章
评论 (0)
还没有评论,来抢沙发