zoukankan      html  css  js  c++  java
  • [java] Docker

    概述

    • 借鉴集装箱运输的思路
    • 解决了同样代码,运行环境变化后无法运行的问题
    • 一个容器包含了完整的运行时环境,除了应用程序本身之外,这个应用所需的全部依赖、类库、其他二进制文件、配置文件等,都统一被打入了一个称为容器镜像的包中

    介绍

    • 镜像:镜像是文件,是只读的,提供了运行程序完整的软硬件资源,是应用程序的"集装箱"
    • 容器:是镜像的实例,由Docker负责创建,容器之间彼此隔离。彼此拥有自己的文件系统,容器的底层镜像都是一个linux系统
    • 关系:用docker安装应用,就是在网上拉取一个已有镜像资源,然后自己的电脑上就有了这个镜像的容器

    作用

    • 简化配置:Docker的初始目的,虚拟机VM最大的好处是基于你的应用配置能够无缝运行在任何平台上。Docker提供同样类似VM的能力,但是没有任何副作用,它能让你将环境和配置放入代码然后部署,同样的Docker配置能够在各种环境中使用,这实际是将应用环境和底层环境实现了解耦
    • 代码管道化管理:能够对代码以流式pipeline管道化进行管理,从开发者的机器到生产环境机器这个流程中都能有效管理。因为在这个流程中会有各种不同的环境,每个都可能有微小的区别,Docker提供了跨越这些异构环境以一致性的微环境,从开发到部署实现流畅发布
    • 开发人员的生产化:在一个开发环境,我们希望我们的开发环境能更加接近于生产环境,我们会让每个服务运行在自己的VM中,这样能模拟生产环境,比如有时我们并不总是需要跨越网络连接,这样我们可以将多个Docker装载一系列服务运行在单机上最大程度模拟生产分布式部署的环境
    • 应用隔离:有很多理由你需要在一台机器上运行多个应用,这就需要将原来铁板一块monolithic的应用切分为很多微服务。实现应用之间的解耦,将多个应用服务部署在多个Docker中能轻松达到这个目的
    • 服务合并:使用Docker也能合并多个服务以降低费用,不多的操作系统内存占用,跨实例共享多个空闲的内存,这些技术Docker能以更加紧密资源提供更有效的服务合并
    • 多租户:Docker能够作为云计算的多租户容器,使用Docker能容易为每个租户创建运行应该多个实例,这得益其灵活的快速环境以及有效diff命令
    • 快速部署:Docker通过创建流程的容器,不必重新启动操作系统,几秒内能关闭,你可以在数据中心创建或销毁资源,不用担心额外消耗。典型的数据中心利用率是30%,通过更积极的资源分配,以低成本方式对一个新的实例实现一个更聚合的资源分配,我们很容易超过这个利用率,大大提高数据中心的利用效率

    命令

    • 启动:systemctl start docker
    • 查询当前容器:docker container ls -all
    • 删除当前容器:docker container rm mycentos
    • 查询所有运行的容器:docker ps
    • 删除特定容器:docker rm [container ID]
    • 停止运行容器:docker stop [name]
    • 重启容器:docker restart [container ID]

    参考

    docker安装

    https://www.cnblogs.com/myzony/p/9071210.html

    https://www.runoob.com/docker/docker-install-mysql.html

    mysql

    https://www.cnblogs.com/sablier/p/11605606.html

    https://blog.csdn.net/weixin_40461281/article/details/92610876

    https://segmentfault.com/a/1190000037512741

    要不要把mysql部署到docker

    https://blog.csdn.net/u012562943/article/details/78983020

    https://blog.csdn.net/mingongge/article/details/107872989

    CentOS 8 错误

    https://blog.csdn.net/qq_36643282/article/details/105190759

    dolphinscheduler

    https://hub.docker.com/r/minimy/dolphinscheduler

  • 相关阅读:
    姐姐的vue(1)
    LeetCode 64. Minimum Path Sum 20170515
    LeetCode 56. 56. Merge Intervals 20170508
    LeetCode 26. Remove Duplicates from Sorted Array
    LeetCode 24. Swap Nodes in Pairs 20170424
    LeetCode 19. Remove Nth Node From End of List 20170417
    LeetCode No.9 Palindrome Number 20170410
    LeetCode No.8. String to Integer (atoi) 2017/4/10(补上一周)
    LeetCode No.7 Reverse Integer 2017/3/27
    LeetCode No.4 Median of Two Sorted Arrays 20170319
  • 原文地址:https://www.cnblogs.com/cxc1357/p/13838372.html
Copyright © 2011-2022 走看看