Docker简单入门

作者: 移动的红烧肉 | 来源:发表于2018-09-30 11:36 被阅读229次

    说明:本教程使用的系统是:centos7

    1.Docker 介绍

    2.Docker 安装与启动

    • 安装前提:docker需要Linux内核是3.10以上:uname -r 查看Linux内核
    • 安装指令:yum install docker
    • 启动指令:systemctl start docker.service
    • 停止指令:systemctl enable docker.service
    • 查看版本:docker version
    • 设置docker开机启动:systemctl enable docker

    3.Docker 相关概念

    docker daemon:运行在宿主机上,Docker守护进程,用户通过Docker client(Docker命令)与Docker daemon交互
    docker主机(Host): 一个物理或者虚拟的机器用于执行 Docker 守护进程和容器
    docker客户端(Client): 客户端通过命令行或者其他工具使用 Docker [API](https://docs.docker.com/reference/api/docker_remote_api)与 Docker 的守护进程通信
    docker镜像(Images): Docker 镜像是用于创建 Docker 容器的 模板  
    docker容器(Container): 容器是独立运行的一个或一组应用
    docker仓库(Registry): Docker仓库用来保存镜像(Images),可以理解为代码控制中的代码仓库 
    

    4.Docker 组成

    Docker image :镜像是只读的,镜像中包含有需要运行的文件。镜像用来创建container,一个镜像可以运行多个container;镜像可以通过Dockerfile创建,也可以从Docker hub/registry上下载
    Docker container :容器是Docker的运行组件,启动一个镜像就是一个容器,容器是一个隔离环境,多个容器之间不会相互影响,保证容器中的程序运行在一个相对安全的环境中。
    Docker hub/registry :共享和管理Docker镜像,用户可以上传或者下载上面的镜像,[官方地址](https://registry.hub.docker.com/),也可以搭建自己私有的[Docker Registry](https://registry.hub.docker.com) 
    

    5.Image 常用指令

    操作 指令 说明
    检索镜像 docker search mysql 查询image
    拉取镜像 docker pull docker.io/mysql:tag tag可选,默认;latest,可以全名,也可以简写
    镜像列表 docker images 本地镜像列表
    删除镜像 docker rmi image-id 删除本地docker image

    6.container 常用指令

    操作 指令 说明
    运行容器 run --name test-tomcat tomcat:latest -d 后台运行 Tomcat 的 latest 版本
    查看运行中的容器 docker ps -a 全部
    停止容器 docker stop name/container-id
    删除容器 docker rm name/container-id
    启动容器 docker start name/container-id
    端口映射 docker run --name tomcat-9000 -p 9000:8080 -d docker.io/tomcat:latest 顺序:自己指定的:镜像的端口
    查看日志 docker logs name/container-id

    7.Docker 的 Hello World

    1) 查询镜像: docker search hello
    INDEX       NAME                                                 DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
    docker.io   docker.io/hello-world                                Hello World! (an example of minimal Docker...   666       [OK]    
    
    2) 拉取镜像:docker pull  docker.io/hello-world 或者去掉前缀,直接 docker pull  hello-world
    成功提示:
      Using default tag: latest
      Trying to pull repository docker.io/library/hello-world ... 
      latest: Pulling from docker.io/library/hello-world
      d1725b59e92d: Pull complete 
      Digest: sha256:0add3ace90ecb4adbf7777e9aacf18357296e799f81cabc9fde470971e499788
      Status: Downloaded newer image for docker.io/hello-world:latest
    
    3)检查镜像:docker iamges
    
    4) 启动容器:docker run hello-world
    出现:Hello from Docker!,运行成功
    
    5)删除容器: 
      查询容器ID : docker ps -a
      删除容器: docker rm 81ff810918d3
    
    6) 删除镜像
      查询镜像: docker images
      删除镜像: docker rmi 4ab4c602aa5e
    

    8.温馨提示

    • 如果镜像下载慢,可以使用镜像加速
    • 使用方法:docker pull registry.docker-cn.com/library/ubuntu:16.04

    相关文章

      网友评论

      本文标题:Docker简单入门

      本文链接:https://www.haomeiwen.com/subject/vrtwoftx.html