码迷,mamicode.com
首页 > 其他好文 > 详细

Docker学习总结

时间:2018-04-04 21:15:33      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:环境变量   image   NPU   仓库   目录结构   命名   配置ip   lin   dock   

Docker学习总结

一、docker简介

  Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。

二、docker组成

  一个完整的Docker有以下几个部分组成:

  1. DockerClient客户端
  2. Docker Daemon守护进程
  3. Docker Image镜像
  4. DockerContainer容器

三、使用docker的好处

  使用docker可以更轻松的实现部署和迁移,能保持环境的一致性。

四、docker基本概念

  1. 镜像

    相当于一个文件系统。除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。

    镜像是分层的,前一层是后一层的基础。

  1. 容器

    容器是镜像运行时的实体,容器的实质是进程。

  1. 仓库

    集中存储、分发镜像的服务。

五、生成镜像

  1. 选择机器作为生成镜像的机器
  2. /data/docker/daemon.js配置

    (mac有图形界面,直接在界面中配置)配置IP和端口,指明仓库地址,生成的镜像会拷贝到这里。使用其他镜像作为基础的,要指明基础镜像来源地址,例如"ampregistry:5000",表明基础镜像来自这里,ampregistry要在hosts中配置。

       3.生成镜像准备工作

    创建空白目录,再放入Dockerfile文件、需要打成镜像的文件。

    目录结构如下:

DockerTest

----test

-------- test_webboot.jar

---- Dockerfile

---- application.properties

 

Dockerfile    生成镜像文件的docker配置文件,指明了基础镜像的来源、时区等环境信息、镜像要包含的文件、启动命令等。

 1 FROM ampregistry:5000/base:1.0.0          //当前镜像的基础镜像,以该镜像为基础,ip:端口/镜像名称
 2 
 3 ENV TZ Asia/Shanghai                                                   //时区、语言、编码
 4 ENV LANG zh_CN.UTF-8
 5 ENV LANGUAGE zh_CN:zh
 6 ENV LC_ALL zh_CN.UTF-8
 7 
 8 WORKDIR /opt/project
 9 
10 ADD application.properties /opt/project/config/application.properties   //镜像包中要包含的文件,以及docker运行后文件拷贝到的目录
11 ADD test/test_webboot.jar /opt/project/
12 
13 CMD ["java", "-jar", " test_webboot.jar"]                //镜像包中jar包启动命令

  4.执行生成镜像命令

    docker build -t ampregistry:5000/test:dev .

    命名规则为:名称:标签

    最后的.表示当前上下文。

六、运行镜像

       docker run

七、docker发放

       可以使用tar包进行部署。

1、保存tar包

如果想要把镜像存出到本地文件,可以使用docker save命令,例如,存出本地的刚才创建的testimage:lastest为镜像文件testimage.tar文件:

docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE

testimage           latest              baea98d5a437        25 minutes ago      188.3 MB

ubuntu              latest              fa81ed084842        3 days ago          188.3 MB

 

docker save –o /data/testimage.tar testimage:latest

 

得到tar包后,可以拿到其他机器进行载入。

docker load —input testimage.tar

 

或者

docker load < testimage.tar

八、常用命令

  镜像操作:

  build     Build an image from a Dockerfile

  commit    Create a new image from a container‘s changes

  images    List images

  load      Load an image from a tar archive or STDIN

  pull      Pull an image or a repository from a registry

  push      Push an image or a repository to a registry

  rmi       Remove one or more images

  search    Search the Docker Hub for images

  tag       Tag an image into a repository

  save      Save one or more images to a tar archive (streamed to STDOUT by default)

  history   显示某镜像的历史

  inspect   获取镜像的详细信息

 

  容器及其中应用的生命周期操作:

  create    Create a new container (创建一个容器)      

  kill      Kill one or more running containers

  inspect   Return low-level information on a container, image or task

  pause     Pause all processes within one or more containers

  ps        List containers

  rm        Remove one or more containers (删除一个或者多个容器)

  rename    Rename a container

  restart   Restart a container

  run       Run a command in a new container (创建并启动一个容器)

  start     Start one or more stopped containers (启动一个处于停止状态的容器)

  stats     Display a live stream of container(s) resource usage statistics (显示容器实时的资源消耗信息)

  stop      Stop one or more running containers (停止一个处于运行状态的容器)

  top       Display the running processes of a container

  unpause   Unpause all processes within one or more containers

  update    Update configuration of one or more containers

  wait      Block until a container stops, then print its exit code

  attach    Attach to a running container

  exec      Run a command in a running container

  port      List port mappings or a specific mapping for the container

  logs      获取容器的日志 

Docker学习总结

标签:环境变量   image   NPU   仓库   目录结构   命名   配置ip   lin   dock   

原文地址:https://www.cnblogs.com/yangtze-yufei/p/8718344.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!