Docker的入门使用

什么是Docker

Docker是基于Go语言实现的开源容器项目;Docker的构想是实现Build、Ship and Run Any App, Anywhere,即通过对应用的封装(packaging)、分发(Distribution)、部署(Deployment)、运行(Runtime)生命周期进行管理,达到应用组件“一次封装,到处运行”的目的。Docker容器可以理解为一种轻量级的沙盒。每个容器内运行者一个应用,不同的容器相互隔离,容器之间也可以通过网络互相通信。

Docker的优势

  • 快速的交付和部署:Docker可以快速创建和删除容器,实现快速迭代,大量节约开发、测试、部署时间
  • 高效的资源利用:Docker容器的运行环境不需要额外的虚拟化管理程序支持,它是内核级的虚拟化,需要更少资源,更高性能
  • 快速迁移和扩展:应用可以在不同平台之间轻松地迁移应用,包括物理机、虚拟机、公有云、私有云、个人电脑等等
  • 简单的更新管理:使用Dockfile,只需要小小的配置修改,可以替代大量的更新工作

Docker安装

省略

将当前用户加入docker用户组

避免每次使用Docker命令都要用特权身份,可以将当前用户加入安装中自动创建的docker用户组:

    sudo usermod -aG docker USER_NAME

常用命令

  • 查看镜像

     docker images
  • 使用tag命令添加镜像标签

    docker tag ubuntu:latest  myubuntu:latest
  • 使用inspect命令查看详情

    docker inspect
  • 使用history命令查看镜像历史

    docker history ubuntu:14.04
  • 搜寻镜像

    docker search  --automated -s 3 nginx
  • 使用标签删除镜像

    docker rmi myubuntu:latest

    这里只删除一个标签,当剩下最后一个标签删除完,这个镜像才被删除

  • 使用镜像ID删除镜像

    docker rmi 镜像ID

### 创建镜像

  • 基于已有镜像的容器创建
    创建一个容器

    $ docker run -it ubuntu:14.04 /bin/bash

    $ docker commit -m "提交消息,注释" -a "作者信息"  容器ID 镜像名称:标签  
  • 基于本地模板导入

    $ cat ubuntu-14.04-x86_64-mininal.tar.gz | docer import - ubuntu:14.04

### 存出和导入镜像

  • 存出镜像

    $ docker save -o ubuntu_14.04.tar  ubuntu:14.04
  • 载入镜像

    $ docker load --input ubuntu_14.tar
    
    $ docker load  < ubuntu_14.04.tar

上传镜像

$ docker push Name:[:TAG]  [REGISTRY_HOST[:REGISTRY_PORT]/]NAME[:TAG]

$ docker tag test:latest user/test:latest
$ docker push user/test:latest

猜你喜欢

转载自blog.51cto.com/12880687/2142060
今日推荐