Docker容器

用DOCKER在家里的实验室里搞些酷炫的玩意儿

本文主要是介绍用DOCKER在家里的实验室里搞些酷炫的玩意儿,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

照片由 Rubaitul Azad 提供,来自 Unsplash

Docker 是最革命性的容器化技术。主要是因为它启动和运行速度快,确保应用程序在不同环境和系统中运行得毫无瑕疵(或根据需要进行少量配置)。

在这篇文章里,我们将聊聊你可以在自家的实验环境里用 Docker 做些什么,我们将讨论你可以如何使用 Docker 容器。

读者注意:这篇博客按照从常用到高级和有趣的功能排列,你可以用 Docker 实现这些功能。

? Homelab是什么?

如果你对家庭实验室(Homelab)的概念还不太熟悉,简单来说,它就是在你自己的私人网络中运行的一台服务器,你可以为它分配一个域名,用来托管像pihole、AdGuard(这两个都用来屏蔽广告)、Nextcloud(用来托管你自己的云服务器)、Jellyfin(用来创建你自己的媒体服务器,类似YouTube)等等服务。这些服务中的大多数将在本博客中讨论。让我们直接开始吧:

下载Docker:

你需要安装 Docker 才能做下面任何事情。

1. 选择你的操作系统:
  • Docker支持Windows、Linux和macOS系统。访问Docker的官方网站(https://www.docker.com/)选择您的系统。
2. 下载安装程序:
  • 点击“Get Started”按钮,然后根据屏幕上的提示下载适合您系统的安装包。
3. 开始安装。
  • 双击下载的安装程序文件,并按照提示进行Docker安装的过程。
  • 注意: 在Windows上,安装完成后请可能需要重启电脑。
4. 检查安装是否正确.
  • 打开终端或命令行提示符,输入 docker --version。这样,如果 Docker 安装正确,你应该能看到已安装的 Docker 版本了。
还有就是:额外考量:
  • Docker Desktop: 对于 Windows 和 macOS 用户,您可能需要安装 Docker Desktop,它包含了 Docker 引擎、Docker Compose 和 Kubernetes。
  • Windows 的 Linux 子系统(WSL2): 在 Windows 上,您可能需要启用 WSL2 以获得最佳性能。
  • rootless 模式: 为了增加安全性,可以考虑使用 rootless 模式,这样可以在不需要 root 权限的情况下运行 Docker。

记得哦: 一定要查看 Docker 官方文档以获取最新的指导和故障排除技巧。

友情提示:虽然你可以用你每天用的电脑来做这些事情,但是更推荐你使用一台旧电脑或旧笔记本电脑,或者如果你有的话,也可以用树莓派。

额外资料:

在我们开始介绍有趣的内容之前,你应该最好先了解一下Linux文件系统 的视频教程和这个Docker 的视频教程(点击链接观看相关视频教程)。

1. Nextcloud | 你的个人Google云盘:

我见过有些人使用 Google Drive 或 Google Photos 来存储他们的回忆和重要文件,但最终存储空间不够了。这时,你只能做两件事:要么删掉一些文件,要么花钱买更多空间。这时候,Nextcloud 就能帮上忙了。

Nextcloud 很像类似于 Google Workspace,但它是自托管且开源的。它具有以下特点:

  • Nextcloud
  • Nextcloud 文件的高性能后端
  • Nextcloud Office(可选)
  • Nextcloud Talk 和 TURN 服务器的高性能后端(可选)
  • Nextcloud Talk 录音服务器(可选)
  • 备份解决方案(可选)
  • Imaginary(可选,用于 heic、heif、illustrator、pdf、svg、tiff 和 webp 文件的预览)
  • ClamAV(可选,用于 Nextcloud 的反病毒后端)
  • 全文搜索(可选)
  • 白板(可选)
  • Docker Socket 代理(可选)

算一下,“基础订阅”的谷歌订阅费用是1.99美元(约20美元一年),用这笔钱你可以买一个1TB的硬盘(虽然可能更贵,但一两年内肯定赚回来)。

你可以在这里找到下载指引 here,或者如果你跟我一样什么都不懂,可以看视频 https://youtu.be/_WsvF5Y5d2I?si=bgePZmzi9Ql_0pi9。

2. jellyfin | 你的自己的媒体服务器:

假设你有很多电影(盗版的,希望我不是唯一一个!),你想从世界上的任何地方(或你的家庭网络)访问它们,而无需将 USB 插入电视后面,那么你可以试试 jellyfin。

你可以在这里找到如何下载和使用它的说明:[链接]

如果你想在你自己的 Windows 或 Mac 电脑上安装(不需要使用 Docker),你可以在这里查看相关说明 here。

读者须知:通常有两个版本的 Docker 镜像,一个由 Linux 服务器版 提供(我强烈推荐您访问该网站了解更多酷炫的内容),另一个则由创作者官方提供。不过,Linux 服务器版的 Docker 镜像配置与其他版本不同。

3. 使用 Affine 或 Obsidain | 托管自己的笔记应用:

有没有想过能随时随地访问你的笔记,而不用付钱,同时也不将自己的数据交给一个“可疑的公司”,这家公司利用这些数据赚钱(通过出售数据),并向你推送个性化的广告,同时用来训练AI模型,让编写开源代码的程序员写的糟糕代码毒害了AI模型的训练。

然后运行你自己的笔记应用是最好的选择。这样做很有用,因为如果你和我一样在多个设备上工作,你就能在浏览器里使用那个应用了。

两款非常流行的开源笔记应用有affine(类似于开源版的notion)和obsidian,其中[obsidian]使用Markdown格式存储笔记。

两者都有各自的优缺点,比如 Obsidian 有一个学习曲线,而 Affine 很容易使用(用起来几乎和 Notion 一样)。Affine 将数据存储在数据库中,而 Obsidian 则将数据存储在你电脑上的 Markdown 文件中(这使得备份和设置更容易)。

这里有一些视频教程,可以帮助你开始使用obsidain。

关于如何开始使用obsidian的教学视频

4. 本地托管的AI模型

假设你没有网络连接,或者Chat GPT由于需求量过大暂时无法使用,而你非常需要这个功能。那么在你的电脑上本地运行一个AI模型就是最好的办法。如果你之前不知道这是可行的,那么读完这篇文章后,你就能知道这是可行的。

读者须知:虽然它可以在 Windows 上运行,但建议您在 Debian 或 Ubuntu 等 Linux 系统上运行,或者在 WSL 中运行。使用Kali Linux结合 kex 可以获得最佳的 WSL 体验,但不适用于此AI托管相关的事项。

所以你需要去访问这个Github仓库,运行docker-compose文件。感谢YouTube上的@WolfgangsChannel用户,是他制作的。

要将其和您的代码编辑器集成起来,您可以安装并使用 continue 插件(点击以查看完整文档)。

如果你想看视频教程的话,@WolfgangsChannel 这里,还有这里 也是 Network Chuck,这两个视频会对你有所帮助。

5. Pi洞 | 拦截广告,加速网络

有些人无法访问非常快的互联网,要加快你的网速,只有三种办法。

  1. 更改DNS服务器
  2. 联系您的ISP询问升级选项
  3. 使用广告拦截软件

但是,使用广告拦截器的问题在于,大多数网站都有阻止广告拦截器的插件,这让你无法使用广告拦截器。

所以,有一个解决方案叫Pihole。它的工作原理就像一个DNS服务器,屏蔽所有的广告网站和跟踪器,从而使上网体验更顺畅。还可以用它来屏蔽不想访问的网站。

建议始终运行一个DNS服务器,因此你应该绝对在树莓派(因为它消耗的电量较少)或其他任何全天候开机的机器上安装Pi-hole(一种DNS过滤工具)。

6. 运行虚拟机(真的不是在开玩笑)

它仅仅运行一个虚拟机,你可以通过私有网络访问它。就是这样。这里有一个链接到 Kali Linux 的 Docker 镜像。我个人觉得从私网上的任何设备访问虚拟机这个想法真的挺酷的 😎。

7. LibreOffice | 类似于微软 Office 但开源的替代品

微软Office价格昂贵,并非所有人都能承担。有一些在线替代品,比如Google Docs和Google Sheets,但它们和其他在线工具一样会收集我们的数据。为了解决这个问题,我们有了libreoffice。它是一个很好的Office替代品。

读者请注意:有一个版本的LibreOffice可以直接在机器上运行,无需使用Docker。如果你想要的话,点击这里了解更多信息。

8. 危险地带.

危险区域软件是一款可以在沙箱中扫描文件,查找病毒的软件(无法与外部进行交互)。如果你想打开一个PDF文件(因为好奇),但又不想让电脑被病毒感染,可以点击这里查看指南。

读者提示:当你点击下载危险区域(适用于 Windows)时,这将下载一个 msi 文件,你需要运行这个文件,这会安装在 Docker 中。这样是为了防止你感到困惑。

今天的分享就到这里,希望你们喜欢。写这篇文章费了不少劲。如果有任何问题,可以在评论区留言,记得关注我,获取更多精彩内容。

这篇关于用DOCKER在家里的实验室里搞些酷炫的玩意儿的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!