zoukankan      html  css  js  c++  java
  • docker知识总结

    一:docker介绍

    docker是开源的应用容器引擎,用于linux,现已支持window容器在win10、window2016
    

    1.1 window容器和linux容器区别

    参考:https://www.linuxidc.com/Linux/2017-11/148981.htm
    window新容器Hyper-V容器和Nano Server技术(win10,win2016)技术的落地,
    使得最小粒度隔离资源成为可能,为docker for window成为可能
    区别:
    linux容器,内核是linux系统,window是window系统;
    linux容器共享宿主系统内核,需要base os也可以不需要,但是window一定需要base os;
    window还提供了一个hyper-v容器来给window容器提供一个隔离资源的最小单元,每个window docker容器下是hyper-v容器下base os系统;
    

    二:docker命令

    ------------容器---------------------
    2.启动容器:docker -it [containner name] //-i:交互式操作;-t: 终端
                docker run -it ubuntu /bin/bash
                exit:进入容器后输入可退出此容器
    3.查看所有容器:docker ps -a
    4.启动指定id容器:docker start <容器 ID>
                      docker restart <容器 ID>
    5.后台运行:docker run -itd --name ubuntu-test ubuntu /bin/bash
                //-d 后台运行
    6.进入容器:docker exec <容器 ID>
                docker attach <容器 ID>
    7.删除容器:docker rm -f <容器 ID>
    8.查看容器port映射情况:docker port <容器 ID>
    9.查看容器logs容器内容标准输出:docker logs <容器 ID>
    10.查看容器进程:docker top <容器 ID>
    ----------镜像-----------------------
    1.列出镜像列表:docker images
    2.获取新的镜像:docker pull [image name]
    3.查找镜像:docker search [image name]
    4.删除镜像:docker rmi [image name]
    5.创建镜像-更新镜像:docker commit -m "has update" -a="jiping" [容器ID] [目标镜像名]
        //-m: 提交的描述信息;-a: 指定镜像作者
    6.创建镜像-构建镜像:docker build -t [目标镜像名] [Dockerfile 文件所在目录,可以指定Dockerfile 的绝对路径]
    7.设置镜像标签:docker tag [镜像ID] [用户名称]/[镜像源名]:[tag]
    ---------容器连接---------------------
    1.网络映射端口:docker run -d -P training/webapp python app.py
        //-P :是容器内部端口随机映射到主机的高端口。
        //-p : 是容器内部端口绑定到指定的主机端口。
    2.容器互联-新建网络:docker network create -d bridge test-net
        //-d:参数指定 Docker 网络类型,有 bridge、overlay。
    3.容器互联-连接容器:docker run -itd -name test1 --network test-net ubuntu /bin/bash;
                         docker run -itd -name test2 -network test-net ubuntu /bin/bash
        //这样连个容器就可以互联了;
        //如果有多个容器需要互联建议用Docker Compose
    4.想要给特定容器修改增加新功能:apt-get update //容器申请更新
                                    apt install iputils-ping//容器更新增加ping组件
    5.配置DNS:
    ----------仓库----------------------
    1.登录仓库:docker login
    2.退出仓库:docker logout
    3.拉取镜像:docker search [镜像名称]
                docker pull [镜像名称]
    4.推送镜像:docker tag ubuntu:18.04 username/ubuntu:18.04
                docker image ls
                push username/ubuntu:18.04
                search username/ubuntu
    

    三:Dockerfile

    Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
    创建镜像:docker build -t [目标镜像名] [Dockerfile 文件所在目录,可以指定Dockerfile 的绝对路径]
    

    四:Docker Compose

    通过docker-compose.yml文件管理配置应用程序需要的多个容器docker应用程序
    启动:docker-compose up -p
        //-p:后台执行该服务
    

    五:Docker Machine

    使得你可以安装Docker Engine到多个虚拟机或远程主机,并管理操作
    

    六:docker-swarm

    docker集群管理工具
    

    七:实例

  • 相关阅读:
    leetcode236
    leetcode139
    leetcode56
    leetcode19
    2018-5-22-SublimeText-粘贴图片保存到本地
    2019-1-29-Sublime-Text-安装中文、英文字体
    2019-1-29-Sublime-Text-安装中文、英文字体
    2018-8-15-WPF-插拔触摸设备触摸失效
    2018-8-15-WPF-插拔触摸设备触摸失效
    2019-10-18-dotnet-修复找不到-System.ServiceProcess-定义
  • 原文地址:https://www.cnblogs.com/xiaoping1993/p/12162729.html
Copyright © 2011-2022 走看看