«

Docker_相關指令

Paladin 发布于 阅读:202 oTher


Dcoker 鏡像源

/etc/docker/daemon.json

{ 
  "registry-mirrors" :[ 
      "https://docker.m.daocloud.io",
      "https://dockerhub.timeweb.cloud",
     "https://huecker.io"
    ],
    "experimental": true
}

systemctl daemon-reload && systemctl restart docker

管理Docker容器操作和管理容器内的进程和文件系统生命周期,包括创建、启动、停止、删除

- docker ps -aq #列出所有容器ID
- docker ps -a #查看所有运行或者不运行容器
- docker stop $(docker ps -a -q) 或者 docker stop $(docker ps -aq) #停止所有的container(容器),这样才能够删除其中的images
- docker rm $(docker ps -a -q) 或者 docker rm $(docker ps -aq) # 想要删除所有container(容器)
- docker images # 删除images(镜像),通过image的id来指定删除谁
- docker rmi $(docker images | grep "^" | awk "{print $3}") #想要删除untagged images,也就是那些id为的image的话可以用
- docker rmi $(docker images -q) #删除全部image(镜像)
- docker rmi -f $(docker images -q) #强制删除全部image的
-  docker cp tomcat:/webapps/js/text.js /home/admin  # 从容器到宿主机复制
   - docker  cp 容器名:  容器路径       宿主机路径  
- docker cp /home/admin/text.js tomcat:/webapps/js  #从宿主机到容器复制
   - docker cp 宿主路径中文件      容器名  容器路径  
- docker container prune # 删除所有停止的容器
- docker image prune --force --all或者docker image prune -f -a  # 删除所有不使用的镜像
- docker stop Name或者ID  #停止
- docker start Name或者ID  #启动
- docker kill Name或者ID  #杀死
- docker restart name或者ID #、重启
- docker #进入容器,查看配置文件
- docker exec :#在运行的容器中执行命令
        -d :分离模式: 在后台运行
        -i :即使没有附加也保持STDIN(标准输入) 打开,以交互模式运行容器,通常与 -t 同时使用;
        -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
#docker exec -it  f94d2c317477 /bin/bash
#出现root@f94d2c317477:/usr/share/elasticsearch/config # vi elasticsearch.yml
#bash: vi: command not found
- apt-get update && apt-get install vim -y
#修改配置、退出容器

- #如果要正常退出不关闭容器,请按Ctrl+P+Q进行退出容器 2、如果使用exit退出,那么在退出之后会关闭容器,可以使用下面的流程进行恢复
- 使用docker restart命令重启容器
- 使用docker attach命令进入容器
- docker info | grep "Registry Mirrors" #验证镜像源是否生效
- systemctl restart docker #重启 Docker 服务
- yum list installed | grep docker  # 查询安装过的包 docker-engine.x86_64 17.03.0.ce-1.el7.centos @dockerrepo
- yum -y remove docker* #删除安装的软件包 yum -y remove docker-engine.x86_64
- rm -rf /var/lib/docker #删除镜像/容器等
- docker rm 容器ID #卸载Docker容器
- docker rm -f 容器ID #-f强制 可以卸载运行的容器
- docker volume ls -qf dangling=true #列出无用的卷
- docker volume rm $(docker volume ls -qf dangling=true) #清理无用的卷,容器,镜像 
    1.docker rmi $(docker images | grep '^' | awk '{print $3}')
    2.docker images --no-trunc | grep '' | awk '{ print $3 }' | xargs docker rmi
    3.docker system prune #清除所有容器
    4.docker volume prune
    5.docker rm $(docker ps -q)
    6.docker rmi $(docker images -q)
- docker system prune -a -f # 彻底清除所有容器。
- docker rm -f $(docker ps -qa) rm -rf /var/lib/etcd /var/lib/cni /var/run/calico rm -rf /etc/kubernetes/ssl /etc/kubernetes/.tmp/ rm -rf /opt/cni # 彻底清除所有容器。
- docker rm -f `docker ps -aq && rm -rf /var/lib/etcd /var/lib/cni /var/run/calico /etc/kubernetes/ssl /etc/kubernetes/.tmp/ /opt/cni` # 彻底清除所有容器。

管理Docker 镜像,包括构建、拉取、删除等

docker build #从 Dockerfile 构建一个新的镜像 docker build -t myimage:latest
docker pull <image-name> #从 Docker Hub 或其他仓库拉取一个镜像
docker push #将本地镜像推送到远程仓库(需要先登录)
docker images #列出本地所有镜像
docker rmi #删除一个本地镜像

操作和管理Docker容器内的进程和文件系统

docker exec #查看容器的日志
docker inspect #查看容器的详细信息
docker cp #在本地文件系统和容器之间复制文件

管理 Docker 的网络,包括创建、查看和删除网络

docker network ls #列出所有 Docker 网络
docker network create #创建一个新的网络
docker network inspect #查看网络的详细信息
docker network connect #将一个容器连接到一个网络
docker network disconnect #将一个容器从一个网络断开

管理 Docker 的存储卷,包括创建、挂载和删除卷

docker volume ls #列出所有存储卷
docker volume create #创建一个新的存储卷
docker volume inspect #查看存储卷的详细信息
docker volume rm #删除一个存储卷
docker run -d --name mynginx -v myvolume:/data nginx #在创建容器时,将存储卷挂载到容器中

Docker