Docker

1、概述

      1.1  Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版);

      1.2  Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。

      1.3  Docker 容器通过 Docker 镜像来创建。

2、Docker架构

      2.1  Docker3个核心概念:

          Docker 镜像(Image):就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。

          容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

          仓库(Repository):仓库可看着一个代码控制中心,用来保存镜像。

3、镜像使用

          当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载;

      3.1、列出本地镜像列表  docker images

      3.2、从Docker Hub下载镜像  docker pull  镜像名称

      3.3、从DockerHub搜索镜像  docker search 镜像名称      

      3.4、删除本地镜像  docker rmi 

      3.5、构建镜像  docker build    

4、容器使用

          Docker允许在容器中运行应用程序,使用docker run在容器中运行应用程序;

     4.1、启动容器 docker run -it 镜像名称  命令     [-i:交互式操作、-t:终端]

     4.2、退出容器  exit|ctrl+d  

     4.3、查看所有容器  docker ps -a

     4.4、启动一个已停止的容器  docker start 容器id

     4.5、后台运行容器  docker run  -itd 镜像名称  命令  [-d:指定容器的运行模式]

                         使用-d参数后,不会默认进入容器

     4.6、停止指定容器  docker stop 容器id

     4.7、重启指定容器  docker  restart 容器id

     4.8、进入容器  

          docker attach  容器id

              从此种方式进入容器,退出终端后,容器会停止;

          docker  exec

              推荐使用exec,退出容器终端,不会导致容器的停止;

     4.9、导出容器  docker export

     4.10、导入容器  docker import

     4.11、删除容器  docker rm  容器id

     4.12、清理所有处于停止状态的容器    docker container prune

        4.13、运行一个web应用  docker run -d -P 镜像名称  命令    [-d:让容器在后台运行、-P:将  容器内部使用的网络端口 随机映射到  我们使用的主机上 ]

5、容器连接

     5.1、网络端口映射   docker run -d -p 本机映射端口号:容器内部端口号  镜像名称  命令   [-p:容器内部端口  绑定到  指定的本机端口]

     5.2、网络ip、端口映射   docker run -d -p 指定容器绑定的ip地址:本机映射端口号:容器内部端口号  镜像名称  命令     

     5.3、网络ip、udp端口映射  docker run -d -p 指定容器绑定的ip地址:本机映射端口号:容器内部端口号 /udp 镜像名称  命令

6、仓库管理

     仓库(Repository)是集中存放镜像的地方;

     docker官方提供一个远程仓库Docke Hub;

     登录docker hub    docker login

     退出docker hub    docker logout

7、常用指令

      查看容器日志    docker logs -f --since=' 时间' --tail 行数  容器名称   

     

posted on 2019-11-05 16:01  anpeiyong  阅读(113)  评论(0编辑  收藏  举报

导航