zoukankan      html  css  js  c++  java
  • docker安装与测试 及 安装docker compose

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

    说下我的理解吧,docker和Java有点类似的地方,我不是说都是编程语言,是指思想,都存在面向对象思想,继承等。也都有装箱和拆箱机制,口号也都是一次BB到处运行。不过Java的一次BB到处运行是指在有jvm环境下才能实现。再说下docker  docker作为一款强大到BOOM的容器docker实现了一次BB到处运行,你可以利用docker下载你需要的镜像包,然后再docker提供的api里进行操作。差不多就是安装包模式下的虚拟机,一个服务一个虚拟机而速度又非常的快。Docker 使用的分层存储以及镜像的技术,使得应用重复部分的复用更为容易,也使得应用的维护更新更加简单,基于基础镜像进一步扩展镜像也变得非常简单。此外,Docker 团队同各个开源项目团队一起维护了一大批高质量的 官方镜像,既可以直接在生产环境使用,又可以作为基础进一步定制,大大的降低了应用服务的镜像制作成本。

      理解docker

    镜像(Image)
    容器(Container)
    仓库(Repository)

    标题说明
    镜像(Images) Docker 镜像是用于创建 Docker 容器的模板。
    容器(Container) 容器是独立运行的一个或一组应用。
    客户端(Client) Docker 客户端通过命令行或者其他工具使用 Docker API (https://docs.docker.com/reference/api/docker_remote_api) 与 Docker 的守护进程通信。
    主机(Host) 一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。
    仓库(Registry) Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。Docker Hub(https://hub.docker.com) 提供了庞大的镜像集合供使用。
    Docker Machine Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。

     docker 架构

    下面说下docker安装

       大多以centos安装,但我虚拟机装的是Ubuntu 16.04

      root命令下:

    apt-get update
    apt-get -y install apt-transport-https ca-certificates curl software-properties-common

    安装 GPG 证书

    curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

    写入软件源信息

    add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
     apt-get -y update
    apt-get -y install docker-ce

    启动docker ce

    systemctl enable docker    
    systemctl start docker

    你也可以不按上面的步骤下载docker,可以使用下面脚本安装  会提示有风险 等个20seconds即可

    curl -fsSL get.docker.com -o get-docker.sh
    sh get-docker.sh --mirror Aliyun

    记得上面的命令是ROOT下进行的  否则每条都要sudo 很麻烦

    然后国内还要添加一下加速器  也就是换镜像  改成国内镜像仓库

    sudo vim /etc/docker/daemon.json

    添加下面内容

    {
     "registry-mirrors": ["https://registry.docker-cn.com"]
    }

    或者用阿里的 https://cr.console.aliyun.com/#/accelerator 注册一个即可

    觉得麻烦就改配置吧。

    然后最好建立用户组

    sudo groupadd docker
    //添加你到docker组下
    sudo usermod -aG docker $USER

    测试docker是否安装

    docker run hello-world

    如果提示没权限的话  就su 在测试

    查看docker版本

    docker version

    2.强烈推荐安装docker-compose  如果下了docker不下docker-compose那就约等于没用docker  ,因为docker-compose真的太好用了。

    它使用yml配置来启动docker容器 包括volume  ports  container-name  services等各种需要你注意的地方。有了docker-compose 你就可以在一个配置文件默认叫docker-compose.yml配置。这里讲安装不讲使用。初学的话老实点把原始docker命令过一遍。

    从 官方 GitHub Release 处直接下载编译好的二进制文件即可。

    sudo curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

    修改文件为可启动模式

    sudo chmod +x /usr/local/bin/docker-compose

    查看docker-compose版本

    docker-compose --version

    有点老,后人看见了换成官网上新点的吧

    add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
  • 相关阅读:
    使用迭代器模式批量获得数据(C#实现)
    如何从技术上预防抢票软件刷屏
    如何用Tesseract做日文OCR(c#实现)
    我的.net开发百宝箱
    程序员必备基础:Git 命令全方位学习
    Java 异常处理的十个建议
    50道Java集合经典面试题(收藏版)
    记一次接口性能优化实践总结:优化接口性能的八个建议
    100道MySQL数据库经典面试题解析(收藏版)
    800+Java后端经典面试题,希望你找到自己理想的Offer呀~
  • 原文地址:https://www.cnblogs.com/notably/p/10779657.html
Copyright © 2011-2022 走看看