zoukankan      html  css  js  c++  java
  • 【入门级】Docker基础介绍(一)

    Docker发展

    Docker目前有两个版本:

    1.Docker EE:企业版

    2.Docker CE:社区版

    Open Container Initiative倡议,包含两个规范,

    1.运行时规范:runtime-spec

    2.镜像规范:image-spec

    容纳容器镜像的站点:

     https://hub.docker.com/

    Docker架构

    Docker是C/S架构,通过https协议通信。daemon可以监听在套接字之上,默认只提供unix sock文件套接字,为了安全起见。它支持ipv4,ipv6,unix sock套接字三种用户接入方式。

    Docker host两个重要组件:

    1.container:容器

    2.image:镜像

    镜像来自于registry镜像仓库,默认为docker hub镜像仓库。可下载到本地后共享给上层使用。启动容器是基于镜像而启动,为镜像创建专用的可写层。

    Image存储在host本地或者公共存储中,通过http/https加载到本地才能被使用,默认使用的方式为https。

    由于docker hub在ufw之外,国内为了实现加速访问,维护了docker.cn或者可从阿里云、中国科技大的镜像加速。用户也可以创建自己的私有仓库。

    仓库:registry

    它是一个可提供镜像存储的仓库,可提供用户获取镜像的认证,并为当前可用镜像作搜索索引。

    一个仓库有自己专属的名称,一般一个仓库仅存放一个应用的镜像,也就是存放同一类应用的不同版本。仓库名就是应用程序名,比如nginx。不同镜像通过添加标签的方式,来相互区分。因此,仓库名+标签才能唯一标识一个镜像。如果只给镜像名而没有标签,则默认访问最新版本的镜像,比如 nginx:stable  nginx:latest。

    镜像(静态的)和容器(动态的,存在生命周期)的关系,就是程序和进程的关系。restful 风格的对象,支持增删查改。使用标准的http协议的方法get,post,put等等。

    1.image

    2.container

    3.networks

    4.volumes:存储容器的,一般是外部网络存储

    5.plugins

    Docker安装及使用

    依赖基础环境:

    1.64 bits CPU

    2.Linux Kernel 3.10 +

    3.Linux Kernel cgroups andnamespaces

    4.CentOS7 “Extras” repository

    5.Docker Daemon systemctl startdocker.service

     

    添加仓库:

    1.编辑daemon.json,添加mirrors

    2.Systemctl restart docker

    3.Docker version

    4.Docker info

    原始的命令用法

    1.搜索镜像:docker search nginx

    2.第一种表示顶级仓库,也就是docker hub官方;第二种表示jwilder账号建立的仓库

    3.Alpine:体积非常小,提供基础的应用环境,可安装在不同的发行版中。测试的时候可以安装此版本,不过缺少调试工具。

    最好自己编制镜像,上传到docker hub或者建立私有registry

    4.下载镜像:

    5.删除镜像:

    6.启动容器:

    7.显示网络

    安装docker后,会默认创建docker 桥172.17.0.1.容器会自动nat到桥上以对外通信。默认会接入到bridge中。

    8.启动busybox容器

    9.Pid为1是用户空间的总进程,如果退出sh,则容器消失。

     

    10.查看容器的信息:docker inspect b1

    11.与容器通信,类似虚拟机之间的通信

    12.退出容器exit

    处于停止状态的容器

    13.终止容器:docker kill b1

    14.删除容器:docker rm b1

    15.在容器外指定命令:docker exec –it kvstor1 /bin/sh

  • 相关阅读:
    POJ 3672 水题......
    POJ 3279 枚举?
    STL
    241. Different Ways to Add Parentheses
    282. Expression Add Operators
    169. Majority Element
    Weekly Contest 121
    927. Three Equal Parts
    910. Smallest Range II
    921. Minimum Add to Make Parentheses Valid
  • 原文地址:https://www.cnblogs.com/eflypro/p/11557496.html
Copyright © 2011-2022 走看看