docker 镜像与容器

2021-03-02  本文已影响0人  宋song一

Docker中通过模板创建镜像,Docker容器、仓库及数据管理

停止、删除所有的docker容器和镜像

docker-compose exit 1时,可以尝试删除所有镜像和容器,先停止试下

列出所有的容器 ID
docker ps -aq

停止所有的容器
docker stop $(docker ps -aq)

删除所有的容器
docker rm $(docker ps -aq)

删除所有的镜像
docker rmi $(docker images -q)

复制文件
docker cp mycontainer:/opt/file.txt /opt/local/docker cp /opt/local/file.txt mycontainer:/opt/

现在的docker有了专门清理资源(container、image、网络)的命令。 docker 1.13 中增加了docker system prune的命令,针对container、image可以使用docker container prune、docker image prune命令。

docker image prune --force --all或者docker image prune -f -a : 删除所有不使用的镜像

docker container prune: 删除所有停止的容器

作者:POPMUISE
链接:https://www.imooc.com/article/details/id/32810
来源:慕课网

2. Docker - Docker Volume及Volume命令详解

docker volume prune
移除未使用的数据卷。

3. 导入导出

镜像重命名(新建) docker tag 源
docker history 镜像名
docker save -o 目标名.tar 源镜像
docker load < 目标名.tar

4. 镜像构建

  1. 根据模板构建(比拉取大很多):
    http://openvz.org/Download/templates/precreated 下载,
    cat 文件.tar.gz | docker import - 镜像名
  2. 启动一个镜像,输出信息后关闭容器
    :~$ docker run nginx /bin/echo "hello docker"

5. 容器

批量关闭容器(删除所有): docker rm -f $(docker ps -a -q)

#!/bin/bash
# 定义进入仓库函数
docker_in(){
  NAME_ID=$1
  PID=$(docker inspect --format {{.State.Pid}} $NAME_ID)
  nsenter --target $PID --mount --uts --ipc --net --pid
}
docker_in $1
docker export [容器id] > 模板文件名.tar
上一篇 下一篇

猜你喜欢

热点阅读