6.《Docker 从入门到实践》安全与底层实现

1 安全性保障

评估 Docker 的安全性时,主要考虑三个方面:

  • 由内核的命名空间和控制组机制提供的容器内在安全
  • Docker 程序(特别是服务端)本身的抗攻击性
  • 内核安全性的加强机制对容器安全性的影响

1.1 命名空间和控制组

当容器启动时,后台 Docker 为容器创建了一个独立的命名空间和控制组集合

  • 命名空间提供了最基础也是最直接的隔离。在容器中运行的进程不会被运行在主机上的进程和其它容器发现和作用;每个容器都有自己独有的网络栈,所有的容器通过本地

Read more

大语言模型幻觉问题调研

大模型幻觉的常见三种情况:

  • LLM 模型输出内容和输入不一致(驴唇不对马嘴)
  • LLM 模型输出内容中包含与上下文不一致的内容(自我矛盾)
  • LLM 模型输出内容和世界知识/训练注入的知识不一致

1 幻觉四象限

  • 右上是最优情况(知之为知之),左下是次优情况(不知为不知)
  • 左上是最差情况,右下是次差的情况;二者需要尽量转移到更优的象限内

2 模型知道,模型认为自己不知道

模型具有正确的内部知识,但模型输出的内容存在错误

如何

Read more

主板入门

主板(英语:mainboard)或母板(motherboard)也称主机板、系统板、逻辑板(logic board)、底板等,简称MB[1][2][3],是构成复杂电子系统例如电子计算机的中心或者主电路板

主板的主要功能是提供一系列接合点,形成一个能整合处理器、内存、存储装置(硬盘、固态驱动器、闪存等)、显示卡、声卡、网卡和各种外部设备的连接平台

主板主要功能分布:

常见 I/O 接口:

右下角指示灯:

常见版型:

参考

【硬件科普】从零开始认识主板(内含软广)

Read more

5.《Docker 从入门到实践》Docker 拓展项目

1 Docker BuildKit

BuildKit 是下一代的镜像构建的开源组件(仅支持 Docker版本>1=8.09)

  • 更高效:支持并行的多阶段构建、更好的缓存管理;
  • 更安全:支持 secret mount,无需 root priviliege;
  • 更易于扩展:使用自定义中间语言 LLB,完全兼容 Dockerfile,也可支持第三方语言(目前仅有 Buildpacks),后台目前可支

Read more

4.《Docker 从入门到实践》数据挂载与网络配置

1 数据管理

1.1 数据卷

数据卷 是一个可供一个或多个容器使用的特殊目录

  • 数据卷 绕过了 UnionFS,可以在容器之间共享和重用
  • 数据卷 的修改会立马生效;对 数据卷 的更新,不会影响镜像
  • 数据卷 默认会一直存在,即使容器被删除(类似于 mount 命令)

数据卷的常见操作:

docker volume create my-vol

Read more

QuickAdd 个人使用总结

QuickAdd 作为 Obsidian 的一个流行插件,可以将常见操作、脚本、模板打包为一个便捷的命令,功能上限极高,但需要一定的学习成本,不过也有很多简单有效的功能可直接参考他人的示例(比如一键抓取豆瓣图书信息,并根据模板生成笔记)

项目地址
官方文档

QuickAdd 包含三种基本工具,并可以进行任意组合(Multi choices 用于多工具的层级管理):

Read more

Git进阶技巧

1 基于GPT的自动代码审核

项目地址 3.1k⭐

Star History Chart

目前支持多种部署方式,官方推荐为使用 Github Action

  1. 添加OPENAI_API_KEY到你的 github action 密钥(Setting - Secrets and variables - Actions - New repository secret,输入G

Read more

中药与马兜铃酸

马兜铃酸(英语:Aristolochic acids,简称AAs)也被称为马兜铃总酸、增噬力酸或木通甲素,是一类具有强烈致癌性和肾毒性的硝基菲羧酸。

自然界含有马兜铃酸的植物达600余种,涉及木通属、木香属、广防己属、千金藤属、青藤属、铁线莲属、蝙蝠葛属、细辛属等约70种中草药,在中国有40余种药材含马兜铃酸:马兜铃、关木通、天仙藤、青木香、广防己、汉中防己、细辛、追风藤、寻骨风、淮通、朱砂莲、三筒管、杜衡、管南香、南木香、藤香、背蛇生、假大薯、蝴蝶暗消、逼血雷、白金果榄、金耳环、乌金草等。

一些药材由于形态与上述药材相似,而有可能在采集、物流环节被混用、搀杂含马兜铃酸的药材,应考虑慎用:

Read more

3.《Docker 从入门到实践》容器与仓库

1 容器操作

容器是独立运行的一个或一组应用,以及它们的运行态环境

容器的正常启动:docker run

  • 基于镜像新建一个容器并启动,容器执行完命令后会自动终止(exited
  • 常用参数1:-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上
  • 常用参数2:-i 则让容器的标准输入保持打开
  • 常用参数3:-d 则让容器以守护态运行,返回信息为容器id

进入启动中的容器:

  • docker attach:进入容器,从这个 stdin 中 exit 会导致容器的停止
  • docke

Read more

Docker 镜像优化

1 镜像瘦身

1.1 选择更精简的基础镜像

常见的 Python 镜像版本:

  • slim:通常只安装运行特定工具所需的最小包
  • Alphine:专门为容器构建的操作系统,比其他的操作系统更小,但是其上会缺少很多软件包并且使用的 glibc 等都是阉割版(不推荐,因为编译过程会很慢)
  • buster/stretch/jessie:表示使用不同版本的 debian 系统(10/9/8)

Read more