• docker 安装


    1. https://www.cnblogs.com/wwtao/p/11473938.html
    2. https://www.cnblogs.com/elvi/p/8463812.html

    什么是容器:是应用程序封装和交付的一种核心技术

    容器技术由以下几个内核核心组成:Cgroups (control , groups)  资源管理

      namespace 进程隔离

    selinux 安全

    由于是在物理机上的隔离 所以 启动一个容器就像启动一个进程一样快速

    什么是docker: 是完整的一套容器管理系统

    docker提供了一组命令,让用户更加方便直接地  使用容器技术 而不用过多关系底层内核技术

    docker的优点: 相比于传统的虚拟化技术 容器更加简单高效

    传统的虚拟机需要给每个vm安装操作系统

    容器使用的公共共享库与程序

    缺点:容器的隔离性没有虚拟化强,共用linux内核,安全性有先天缺陷 ,selinux难以驾驭 ,容器的监控与排错是挑战

    基于阿里源 可以直接yum install docker

    systemctl restart docker

    ifconfig 出现 docker0  说明环境部署成功

     docker version        //查看版本

    在docker中容器是基于镜像启动的 镜像是容器的核心 镜像采用分层设计 使用快照的cow技术,确保底层数据不丢失

    官方镜像仓库 https://hub.docker.com 公共的镜像仓库(Registry)

    加速器  https:

    对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)

    {
      "registry-mirrors": [
        "https://dockerhub.azk8s.cn",
        "https://reg-mirror.qiniu.com"
      ]
    }
    

    注意,一定要保证该文件符合 json 规范,否则 Docker 将不能启动。

    之后重新启动服务。

    $ sudo systemctl daemon-reload
    $ sudo systemctl restart docker
    

    注意:如果您之前查看旧教程,修改了 docker.service 文件内容,请去掉您添加的内容(--

    检查加速器是否生效

    执行 $ docker info,如果从结果中看到了如下内容,说明配置成功。

    Registry Mirrors:
     https://dockerhub.azk8s.cn/
    

    registry-mirror=https://dockerhub.azk8s.cn

    docker 命令

    docker images 查看镜像

    docker pull 下载镜像 docker push 上传镜像  上传到官方  需要注册

    docker search 查找镜像

     docker save docker.io/busybox:latest -o busybox.tar  将本地镜像导出为tar包

    docker load -i nginx.tar 将tar包导入到镜像

     docker rmi  docker.io/nginx 删除镜像

    for i in * ; do docker load -i $i; done 导入多个镜像   *表示当前路径下的tar包文件名

    启动镜像

    1)启动centos镜像生成一个容器

    启动镜像时若不知道后面的命令加什么:

    1、可以猜(如:/bin/bash、/bin/sh)

    2、可以不加后面的命令,默认启动

    docker run -it docker.io/centos /bin/bash
    run命令 相当于创建 启动 连接 也就是 create start attach (可理解为 console命令连接的终端)
    docker history 镜像制作历史
    docker inspect 查看镜像底层信息
    docker tag 修改镜像名称与标签
    docker images 查看镜像列表 包含 镜像仓库名称 镜像标签 镜像id 创建时间 大小





    2.docker加速 

    复制代码
    vi  /etc/docker/daemon.json   
    
    改: {}
    
    为:
    
    {
    
    "registry-mirrors": ["https://e9yneuy4.mirror.aliyuncs.com"]
    
    }
    
     systemctl daemon-reload
    
    systemctl restart docker
    
     docker pull docker.io/centos  

    从 Docker 镜像仓库获取镜像的命令是 docker pull。其命令格式为:

    docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]
    https://www.cnblogs.com/zsl-find/articles/11308814.html 本公司用的docker




    公司私有镜像
    docker pull  java:8-jre-alpine 别人做好的镜像 可以直接拿来用
     
    #docker
    FROM java:8-jre-alpine
    WORKDIR /home
    ADD ./target/dygacontentmanagement-app.jar dygacontentmanagement-app.jar
    EXPOSE 8808
    VOLUME ["/home"]
    ENTRYPOINT ["java", "-jar", "dygacontentmanagement-app.jar", ">", "spring.log", "&"]
    复制代码
    mkdir target
    cp dygacontentmanagement-app.jar /root/app/target/
    cd /root/app
    
    docker build -t dgcmt/app .

     

    192.168.1.115 8808  dygaContentManagement-app 192.168.1.115 8812  dygaContentManagement-service

    docker exec -it 9c97898a932b /bin/sh
    docker run -itd -p 8812:8812 dgcmt/service:latest
    nohu java -jar dygacontentmanagement-app.jar > spring.log &
    docker build -t dgcmt/app . docker run -itd -p 8808:8808 dgcmt/app:latest
    http://192.168.1.197 admin 12345
    vi /etc/docker/daemon.json { "insecure-registries": [ "192.168.1.197" ] }
    systemctl daemon-reload && systemctl restart docker
    docker login 192.168.1.197 -uadmin -p12345
    docker tag dgcmt/app:latest 192.168.1.197/library/dgcmt/app:latest docker push 192.168.1.197/library/dgcmt/app:latest docker pull 192.168.1.197/library/dgcmt/app:latest

    复制代码公司需要
    build.sh
    
    #!/bin/bash
    A=dygacontentmanagement-service
    A1=dygacontentmanagement/service
    B=dygacontentmanagement-app
    B1=dygacontentmanagement/app
    # rmi images
    docker rmi $A1 $B1
    docker rmi 192.168.1.197/library/$A1 192.168.1.197/library/$B1
    
    cd /built/$A
    docker build -t $A1 .
    docker tag $A1:latest 192.168.1.197/library/$A1:latest
    docker push 192.168.1.197/library/$A1:latest
    
    cd /built/$B
    docker build -t $B1 .
    docker tag $B1:latest 192.168.1.197/library/$B1:latest
    docker push 192.168.1.197/library/$B1:latest
    复制代码

     

     









    可怜一片无暇玉, 误落风尘花草中。 羡他村落无盐女, 不宠无惊过一生。
  • 相关阅读:
    #敏捷个人# 每日成长101:第72天【自我接纳】
    如何从敏捷个人架构图看出时间管理的演变
    #敏捷个人# 每日成长101:第73天【选择】
    2012年度总结:内心宁静的2012
    欢迎关注敏捷个人微信公众帐号
    敏捷个人的创立与详解Scrum会议
    学习敏捷个人卡片V1.0
    #敏捷个人# 每日认识101(11):做自己的医生
    #敏捷个人# 面向对象分析与PPT有什么关系?
    《敏捷个人-认识自我,管理自我 v0.6.pdf》配套PPT打印书籍
  • 原文地址:https://www.cnblogs.com/wwtao/p/11473938.html
Copyright © 2020-2023  润新知