当前位置: 首页 > news >正文

001.docker30分钟速通版

  • docker简介

    1. docker就是一个用于构建(build),运行(run),传送(share)应用程序的平台
    2. 做一个不恰当的类比,就是外卖平台,如果你自己做华莱士不一定好吃,但是如果华莱士做好了汉堡包(构建)呢?让后外卖(分享),最后你吃了(运行),拉肚子了(和在华莱士的效果一模一样)。
    3. 有了docker我们就可以随时随地的拉肚子了,也可以随时随地的直接运行程序而不用担心环境。
    4. docker的原理
    5. 为什么要用docker?

      1. 假如你要搞一个网站,前端要vue,后端springboot,数据库是mysql

      2. 最少都要node,npm依赖,mysql,nginx,java,vue相关

      3. 一套下来,一天就没有了,而且每一次不同硬件上完成,你就当在搞一遍。如果这个时候,有外卖就好了,饿了一点就可以吃了。docker就是送外卖的平台。

  • docker与虚拟机的区别

    1. 虚拟机(比如vm)是虚拟了一个操作系统
    2. 容器(汉堡包):只包含了要用到的环境,不涉及操作系统,或者说虚拟机是让厨师去你家做饭,容器是做好了打包,谁更花钱显而易见,当然你有钱就当我没说。
    3. 容器和docker:因为“外卖”太出名了,所以更有吃外卖(汉堡包),做外卖(美团),但是我们不能说美团是汉堡包。同理,虽然docker是容器平台,而且还很出名,但是docker不是容器,docker的容器的搬运工,当然也生产容器。就像美团一样,有生产汉堡包的店铺,也有美团骑手。
  • 基本原理与概念

    1. 镜像:当你面对镜子的时候,你不可能拿到镜子里的东西,所以镜像对于大部分人而言是只读的模版,但是你可以指定镜子里有什么。
    2. 容器:当你想自己拍自己,就可以通过镜像,因为镜像是只读的,所以一旦保证正确那么后续大概率没错。这个时候你拍的相片就是你自己的信息载体,我们将他叫做容器。无论你相亲多少人,对象一看就知道你长什么样。千人一面,相片(容器)提供了一个独立的对所有人有效的(可移植)的载体(环境)。
    3. 仓库:好了现在你太丑了,必须要改变穿衣风格,你打开xhs发现,大家发了很多自拍,你知道,这是容器,那不是你要的。突然有人分享了他的穿衣风格,于是你根据他的穿衣风格对镜,发现“wow”,他的穿衣风格就是你想要的镜像。而可以分享镜像的地方就是仓库。
    4. 好了,不懂没关系。你用过面向对象的编程语言吗?比如说py,java?
      1. 镜像=类,容器=实例,仓库=别人或者自己写好的类分享给别人的网站(说不定就是csdn)
    5. 好吧,我刚入门,我什么都不知道,能不能形象一些?
      1. 镜像=食谱,容器=根据食谱做好的饭,仓库=存放你我食谱且可以相互使用的共享阅读点。
  • docker的安装

    1. 网站:docker.com(目前无法使用,哈哈哈,会好的)
    2. 下载好安装包
    3. 双击安装就好了,安装完成后请启动
    4. 如果是window用户,在搜索框搜索“hyper-v”,其它这个程序即可
    5. 这个时候你就可以在cmd中使用docker了,先用docker version看看系统信息
    6. 如果你只看到了client没看到server,恭喜你,你没有启动docker,建议启动
    7. 小小的原理
  • 容器化和Dockerfile

    1. 容器化
      1. 创建一个dockerfile:告诉docker创建镜像的步骤与要求。(我要吃龙虾,小龙虾的步骤与需要的材料)
      2. 使用dockerfile创建镜像:通过dockerfile的步骤与要求,完成对镜像的创建。(根据小龙虾的步骤和材料,编写合适的菜单)
      3. 使用镜像创建于运行容器。(根据菜单完成小龙虾,做完尝尝)
    2. Dockerfile:文本文件,包含了多条指令,告诉docker,docker根据文件构建镜像。
  • 炒炒菜

    1. 在桌面创建一个文件夹“hello docker”(任意位置都可以)
    2. 所用任意一款喜欢的编辑器打开文件夹(不要说记事本)
    3. 创建一个index.js文件并写入“console.log("js控制台输出")”
    4. 现在要直接执行js文件,要操作系统,node,以及一些依赖环境,如果电脑上没有node,那么抱歉,用不了。
    5. 在同一级目录创建“Dockerfile”,建议D大写,没有后缀名
    6. 编写Dockerfile
    7. 查看镜像,通过docker images 【ls】
    8. 运行镜像:docker run 镜像名
    9. 在线docker:自行研究,我不会。Play with Docker (play-with-docker.com)icon-default.png?t=O83Ahttps://labs.play-with-docker.com/
    10. docker pull 仓库/镜像名:下载镜像。
  • docker desktop:一款docker的图形化界面

    1. 容器有生命周期不可能持久化就像内存一样,要持久化就要映射的物理设备上虚化出来的逻辑卷上。
  • docker compose:

    1. 这是一个配置文件一般名字叫docker-compose.yml。里面将用到的环境放入当做统一控制组合,通过一条命令完成对整个环境的启动关闭配置。

相关文章:

001.docker30分钟速通版

docker简介 docker就是一个用于构建(build),运行(run),传送(share)应用程序的平台做一个不恰当的类比,就是外卖平台,如果你自己做华莱士不一定好吃&#xff0…...

Kafka 在 Linux 下的集群配置和安装

Kafka 在 Linux 下的集群配置和安装 Apache Kafka 是一个流行的分布式流处理平台,广泛用于实时数据管道和流处理应用。本文将详细讲解如何在 Linux 环境中配置和安装 Kafka 集群,并包括通过 Docker 安装和配置 Kafka 的步骤。每个步骤都将提供详细的解释…...

Python--操作列表

1.for循环 1.1 for循环的基本语法 for variable in iterable: # 执行循环体 # 这里可以是任何有效的Python代码块这里的variable是一个变量名,用于在每次循环迭代时临时存储iterable中的下一个元素。 iterable是一个可迭代对象,比如列表(…...

JMeter(需要补充请在留言区发给我,谢谢)

一、学习工具 1、CinfigElement(HTTP Request Defaults、HTTP Header Manager、HTTP Authorization、CSV Data Set Config、User Defined Variables、JDBC Connection Configuration、HTTP Cookie Manager、Random Variable) 二、协议 1、HTTP协议(消息体数据&am…...

线程池的执行流程和配置参数总结

一、线程池的执行流程总结 提交线程任务;如果线程池中存在空闲线程,则分配一个空闲线程给任务,执行线程任务;线程池中不存在空闲线程,则线程池会判断当前线程数是否超过核心线程数(corePoolSize&#xff09…...

node-red-L3-重启指定端口的 node-red

重启指定端口 目的步骤查找正在运行的Node.js服务的进程ID(PID):停止Node.js服务:启动Node.js服务: 目的 重启指定端口的 node-red 步骤 在Linux系统中,如果你想要重启一个正在运行的Node.js服务&#x…...

(done) 使用泰勒展开证明欧拉公式

问问神奇的 GPT,how to prove euler formula? 一个答案如下:...

红队apt--邮件钓鱼

前言 欢迎来到我的博客 个人主页:北岭敲键盘的荒漠猫-CSDN博客 免责声明: 本文仅供了解攻击方手法使用,切勿用于非授权情节 初步了解邮件基础 用途方面 这个我们应该比较熟悉,最常用于验证码接收,也有一些厂商会用这个来打广告,…...

十七,Spring Boot 整合 MyBatis 的详细步骤(两种方式)

十七,Spring Boot 整合 MyBatis 的详细步骤(两种方式) 文章目录 十七,Spring Boot 整合 MyBatis 的详细步骤(两种方式)1. Spring Boot 配置 MyBatis 的详细步骤2. 最后: MyBatis 的官方文档:https://mybatis.p2hp.com/ 关于 MyBa…...

DNS协议解析

DNS协议解析 什么是DNS协议 IP地址:一长串唯一标识网络上的计算机的数字 域名:一串由点分割的字符串名字 网址包含了域名 DNS:域名解析协议 IP>域名 --反向解析 域名>IP --正向解析 域名 由ICANN管理,有级别&#xf…...

每日一题——第一百零八题

题目&#xff1a; 写几个函数&#xff0c; ①输入10个职工的姓名和职工号 ②按照职工号由小到大排列&#xff0c; 姓名顺序也随之调整 ③要求输入一个职工号&#xff0c; 用折半查找找出该职工的姓名 #include<stdio.h> #include<string.h> #define MAX_EMPOLYEES…...

使用Python免费将pdf转为docx

刚刚想将pdf转换为docx文档时&#xff0c;居然要收费 还好我学过编程&#xff0c;这不得露两手 将pdf 转换为 docx 文档 的操作步骤 我这里使用的是Python语言 &#xff08;1&#xff09;在终端上安装 pdf2docx 是一个 Python 库&#xff0c;它可以将 PDF 文件转换为 Word (…...

树莓派4B+UBUNTU20.04+静态ip+ssh配置

树莓派4B+UBUNTU20.04+静态ip+ssh配置 1.烧录Ubuntu镜像1.1选择pi 4b1.2选择ubuntu server (服务器版,无桌面)20.041.3选择sd卡1.4 点击右下角 NEXT ,编辑设置,输入密码,wifi选CN, 开启ssh1.5 烧录,依次点击“是”,等待完成2 烧录完成后装入树莓派,上电,等待系统完成配…...

C#实现指南:将文件夹与exe合并为一个exe

在软件开发过程中&#xff0c;有时需要将多个文件&#xff08;如资源文件、配置文件等&#xff09;与可执行文件&#xff08;exe&#xff09;打包在一起&#xff0c;以便于分发和部署。在C#中&#xff0c;我们可以利用ILMerge或Costura.Fody等工具来实现这一目标。本文将介绍如…...

linux信号 | 学习信号三步走 | 全解析信号的产生方式

前言&#xff1a;本节内容是信号&#xff0c; 主要讲解的是信号的产生。信号的产生是我们学习信号的第二个阶段。 我们已经学习过第一个阶段——信号的概念与预备知识&#xff08;没有学过的友友可以查看我的前一篇文章&#xff09;。 以及我们还没有学习信号的第三个阶段——信…...

C++ 刷题 使用到的一些有用的容器和函数

优先队列 c优先队列priority_queue&#xff08;自定义比较函数&#xff09;_c优先队列自定义比较-CSDN博客 373. 查找和最小的 K 对数字 - 力扣&#xff08;LeetCode&#xff09; 官方题解&#xff1a; class Solution { public:vector<vector<int>> kSmallestP…...

【Kubernetes】常见面试题汇总(三十四)

目录 86. K8s 每个 Pod 中有一个特殊的 Pause 容器能否去除&#xff0c;简述原因。 特别说明&#xff1a; 题目 1-68 属于【Kubernetes】的常规概念题&#xff0c;即 “ 汇总&#xff08;一&#xff09;~&#xff08;二十二&#xff09;” 。 题目 69-113 属于【Kuberne…...

C++标准库双向链表 list 中的insert函数实现。

CPrimer中文版&#xff08;第五版&#xff09;&#xff1a; //运行时错误&#xff1a;迭代器表示要拷贝的范围&#xff0c;不能指向与目的位置相同的容器 slist.insert(slist.begin(),slist.begin(),slist.end()); 如果我们传递给insert一对迭代器&#xff0c;它们不能…...

华为机考练习(golang)

输入 第一行输入一个正整数N&#xff0c;表示整数个数。&#xff08;0<N<100000&#xff09; 第二行输入N个整数&#xff0c;整数的取值范围为[-100,100]。 第三行输入一个正整数M&#xff0c;M代表窗口的大小&#xff0c;M<100000&#xff0c;且M<N。 输出 窗口…...

51单片机快速入门之按键应用拓展

51单片机快速入门之按键应用拓展 LED的点动控制: 循环检测,当key 为0 时 led 亮 反之为熄灭 while(1){ if(key!1) { led0; }else { led1; } } LED的锁定控制: 当按钮按下,led取反值 while(1) { if(key!1) { led!led; } } LED的4路抢答控制: bz默认为0 !bz 取反值,循环启动…...

从PIPIKAI开源项目到APK:YOLO11安卓部署全流程拆解与踩坑记录

从PIPIKAI开源项目到APK&#xff1a;YOLO11安卓部署全流程拆解与踩坑记录 在移动端实现实时目标检测一直是计算机视觉领域的挑战性任务。当YOLO11遇上ncnn推理引擎&#xff0c;再通过Android Studio的精心调校&#xff0c;这套组合拳能打出怎样的效果&#xff1f;本文将带您深…...

签名计算效率工具:xhshow实现小红书API请求处理提速90%的技术原理揭秘

签名计算效率工具&#xff1a;xhshow实现小红书API请求处理提速90%的技术原理揭秘 【免费下载链接】xhshow 小红书xs纯算 小红书56版本xs 小红书个人主页 批量爬取数据 文章批量下载 小红书x-s x-t x-s-common x-b3-traceid search-id 旋转验证码参数纯算纯协议逆向 项目地址…...

避坑指南:StarRocks聚合模型排序键的5个常见错误配置(含性能对比测试)

StarRocks聚合模型排序键配置实战&#xff1a;从性能陷阱到最佳实践 当电商平台的UV统计查询从3秒延长到30秒&#xff0c;当数据仓库的存储空间以每天10%的速度膨胀&#xff0c;很多团队才意识到——聚合模型的排序键配置出了问题。作为StarRocks最核心的性能杠杆&#xff0c;排…...

经典蓝牙Sniff Mode的功耗优化策略与应用场景解析

1. 经典蓝牙Sniff Mode基础原理 蓝牙设备在保持连接状态时&#xff0c;即使没有数据传输也会定期交换POLL-NULL数据包来维持链路。这种机制虽然保证了连接稳定性&#xff0c;却带来了不必要的功耗开销。Sniff Mode就像给蓝牙设备装了个"智能闹钟"——平时让设备睡觉&…...

化工模拟老司机的原油蒸馏骚操作

Aspen 化工过程模拟虚拟组分蒸馏原油 本可模型 在本模型中&#xff0c;将使用pseudocomponents进行原油蒸馏。 将创建一个由常压蒸馏塔和真空蒸馏塔组成的模型。 常压蒸馏塔将使用 Chao-Seader 热力学模型建模&#xff0c;而真空蒸馏塔将使用 Braun K10 模型建模。在Aspen里折腾…...

开箱即用:BAAI/bge-m3镜像,一键启动语义相似度分析WebUI

开箱即用&#xff1a;BAAI/bge-m3镜像&#xff0c;一键启动语义相似度分析WebUI 1. 快速上手&#xff1a;从零到一的十分钟体验 你是不是也遇到过这样的场景&#xff1f;手头有两段文字&#xff0c;想知道它们说的是不是一回事&#xff0c;或者想快速验证一下自己构建的AI知识…...

Phi-3-Mini-128K惊艳效果:处理含JSON Schema的OpenAPI规范并生成Mock数据

Phi-3-Mini-128K惊艳效果&#xff1a;处理含JSON Schema的OpenAPI规范并生成Mock数据 1. 模型能力概览 Phi-3-Mini-128K是基于微软Phi-3-mini-128k-instruct模型开发的轻量化对话工具&#xff0c;专为处理复杂技术文档和结构化数据而优化。这个128K超长上下文的模型在解析技术…...

OpenClaw飞书机器人实战:GLM-4.7-Flash智能问答系统搭建

OpenClaw飞书机器人实战&#xff1a;GLM-4.7-Flash智能问答系统搭建 1. 为什么选择OpenClaw飞书GLM组合&#xff1f; 去年我负责团队的知识库建设时&#xff0c;每天要处理上百条技术咨询。传统FAQ文档的维护成本高&#xff0c;而商业客服系统又超出预算。直到发现OpenClaw这…...

抖音弹幕抓取终极指南:3分钟掌握系统代理抓包技术

抖音弹幕抓取终极指南&#xff1a;3分钟掌握系统代理抓包技术 【免费下载链接】DouyinBarrageGrab 基于系统代理的抖音弹幕wss抓取程序&#xff0c;能够获取所有数据来源&#xff0c;包括chrome&#xff0c;抖音直播伴侣等&#xff0c;可进行进程过滤 项目地址: https://gitc…...

OpenClaw+GLM-4.7-Flash:自动化测试脚本生成器

OpenClawGLM-4.7-Flash&#xff1a;自动化测试脚本生成器 1. 为什么需要自动化测试脚本生成 作为一名长期奋战在一线的开发者&#xff0c;我深知测试环节的重要性与繁琐程度。每当项目进入测试阶段&#xff0c;编写测试用例和脚本往往要占据整个开发周期的30%-40%时间。更令人头…...