一、远程仓库

  1、官方仓库:https://hub.docker.com/

  2、可以下载官方或他人上传的镜像,也可以上传自己制作的镜像。

  3、更改国内源:

    ①vi /etc/docker/daemon.json  

    ②{

      ...

      "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]

      ...

     }

二、镜像操作

  1、镜像的本质:就是一些既定的文件,这些文件通过docker跑起来,就是容器,就像在操作系统之上跑着进程。

  2、查找镜像

    ①在官网查找:https://hub.docker.com/

    ②docker search

  3、拉取镜像

    ①不注明版本默认最新版latest:docker pull hello-world

    ②注明版本:docker pull hello-world:nanoserver

  4、查看本机有哪些镜像:docker images(等同于:docker image ls)

     REPOSITORY  TAG   IMAGE ID   CREATED   SIZE

          镜像名字      版本        id号         创建时间     大小

 

  5、删除镜像:docker rmi 镜像名字/id号(等同于:docker image rm 镜像名字/id号)

    如果还有基于这个镜像的容器,是不允许删除镜像的,需要先删除容器,再删除镜像

  6、查看镜像信息:docker image inspect 46ff56815c7c

三、容器操作:

  1、删除容器:docker rm 容器名字/容器id

  2、启动并运行容器:docker run -di --name=mycentos centos:centos7

    通过centos:centos7镜像,创建一个容器名字叫mycentos,并且把它运行起来,会打印出容器的id号

    如果指定的是本地没有的镜像,会先pull镜像,再run

  3、查看本机正在运行的容器:docker ps

  4、查看本机所有容器(包括停止的):docker ps -a

  5、停止容器:docker stop 容器名字/id号

  6、启动容器:docker start 容器id/名字

  7、容器的创建与启动:

    ①创建:docker create --name=xxx redis

      docker create --name=test-container centos:centos7 ps -A

    ②启动:docker start test-container

    ③容器保持运行的机制:

      该容器有一条前台进程,直在运行

      自己制作的镜像,想要运行起容器,必须要有一个可以挂起的命令,该命令结束,容器也就停止了

    ④可选参数:

      -i:表示运行容器。

      -t:表示容器启动后会进入其命令行,加入该参数后,容器创建的同时就会登录进去,相当于分配一个伪终端。

      -d:加入该参数后,容器创建的同时会在容器内部创建一个守护进程使容器在后台运行。

      --name:为创建的容器命名,如果不写,会自动分配一个英文名称。

      -v:表示目录映射关系,前者是宿主机目录,后者是容器目录,映射到宿主机上的目录,可以使用多个-v做多个目录或文件映射。

      -p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口,可以使用多个-p做多个端口映射。

  8、操作容器的方式:

    ①docker exec 容器id ls:通过exec在容器内执行命令

    ②docker exec -it  容器id /bin/bash:通过exec在容器内打开bash窗口

    ③容器内部装好ssh服务端,再通过ssh连接进去

  9、退出容器:exit

  10、文件拷贝:

    ①从本机拷贝到容器内部:docker cp aaa.txt 容器id:/home

    ②从容器内部拷贝到本机:docker cp 容器id:/home/aaa.txt /app

  11、目录映射:docker run -di --name=mycentos99 -v /home/lqz:/home centos:centos7

    一旦挂载,本机与容器内的目录操作,都会同步影响

  12、端口映射:docker run -di -p 6377:6379 redis:latest

  13、查看容器详情:docker inspect f81

    查看容器ip地址:docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名称/容器ID

 

    

posted on 2020-09-03 02:15  焚音留香  阅读(240)  评论(0编辑  收藏  举报