实践案例:ContextOS用户个人知识管理
一. 用户故事
小王提问:GitHub 已经有1亿用户在使用了,同样Gitee用户总量超过600万。
为什么你还使用ContextOS管理你项目仓库?
老王回答:
下面是是我个人使用经验,不一定使用其他人
我在gitee建立一个项目仓库,来管理知识笔记,记录自己学习
使用ContextOS 在管理之后有下面三个作用
- 增加仪式感,正因为GitHub有优秀项目会让失去自信心,因此使用ContextOS强化自己信念。
- ContextOS兼容原来代码托管方式,代码 可以托管到Gitee,也可以使用自己节点 管理代码
- 随时随地访问使用。
例如 公司 使用window,回家使用mac,出差路上 没有笔记本,只有手机。方便自己随时访问。
用户购买了 云2C2G的 window 云主机 ,想再在云主机做简单的应用 ,远程访问时个问题
遇到一个问题,无法随时随地访问,修改,并缺2C2G无法使用vscode等工具,
今天试试ContextOS能解决这个问题吗?
补充:
- 什么是GitHub
GitHub是一个在线软件源代码托管服务平台,用于公开程序或软件的代码。
使用Git作为版本控制软件,
由开发者克里斯·汪斯崔斯、P·J·海特和汤姆·普雷斯顿·沃纳使用Ruby on Rails编写而成。
在2018年,GitHub被微软公司收购。
来源:/news-insights/company-news/100-million-developers-and-counting/
- 什么是 ContextOS
云时代的新型操作系统,既要完全自给自足,又要任意互联互通
- 操作系统:ContextOS 是一种新型的操作系统。既可以运行在已有的操作系统之上,包括 Windows、macOS、Linux 等,以及所有国产的操作系统。也可以封装一个 Linux 内核,直接跑在裸机之上,支持所有主流的芯片架构。
- 开发环境:ContextOS 自研了一套完整的开发环境,包括编辑器、编译器、前端框架、后端框架、代码库、数据库等,可以在任何设备上随时随地的现场编程,实现本机的升级迭代。
- 组织架构:ContextOS 既可以将所有设备互联互通到一起,当成一台电脑来使用;又可以在一台设备上创建任意多个子空间,当成多台电脑来使用;从而实现任意的集群化与虚拟化。
- 软件生态:ContextOS 每台设备都是代码源、镜像源、认证源、控制源等,可以像 Github 一样提供源代码,像 Dockerhub 一样提供系统镜像,创建一个完全去中心化、分布式的软件生态。
二、搭建步骤
2.1 在自己购买2C2G CentOs云主机搭建
- 安装git 直接参考
- 源码安装ContextOS
git clone cd ContextOS && source etc/miss.sh 启动:./bin/ice.bin
http://localhost:9020
小提示:
- 云主机需要防火墙开放 9020端口
- 云主机访问时候localhost改成自己对外可以访问的ip
hthttp://101.43.226.54:9020/#profile:dream:dream:tabview
2.2 在个人笔记通过浏览器访问:
第一次访问程序 授权客户端登陆:
http://对外ip地址:9020
cd /root/ContextOS//ContextOS安装目录
./bin/ice.bin admin space loginb3a5919b3ec8f1bab7508aad8250dece
2.3 创建项目(此时还没关联代码仓库)
说明:仓库 和镜像 可以先不填写
创建完成:
创建完成后 在云主机查看 创建一个目录(一个项目就一个目录)
/root/ContextOS/usr/local/work/20250205-read_book
点击 后台 进入代码管理
配置git 提交代码 用户和密码
类似:
git config –global user.name “Your Name” git config –global user.email “your_email@example”
2.4 请初始化代码库
小提示
- 远程仓库选择gitee,https形式目前不支持ssh方式
创建完
对应云主机
管理 远程仓库
2.5 从远程仓库下载代码
等价于:git clone .git,git pull
界面操作 和命令操作效果一样
查看云主机 确认 代码已经下载完成
2.6 发现问题:在编辑器中是无法查看自己写 *.md 这样文档
说明:
- 不是编译器。编辑器只读写src目录下的文件。
每个目录都是有作用的,类似unix目录标准。
- ContextOS有自己的文档语言,比md更加简单高效,并且能把所有的功能模块直接插入到文档里
三。发现问题并主动解决 问题才是核心能力
.php?mod=viewthread&tid=4&extra=page%3D1
问题1 mac ssh 登录如何免登录
你的 ~/.ssh/config
配置中,已经包含了 SSH 连接所需的基本信息:
Host money
HostName 101.43.1.1 //public ip
Port 22
User root
但这个配置本身并不能实现免密码登录,你还需要 配置 SSH 密钥认证
复制公钥到远程服务器
使用 ssh-copy-id
方便地将你的公钥 (~/.ssh/id_rsa.pub
) 复制到远程服务器:
ssh-copy-id root@101.43.1.1/
或者,手动将公钥追加到服务器的 ~/.ssh/authorized_keys
:
sh
cat ~/.ssh/id_rsa.pub | ssh root@101.43.1.1 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'
authorized_keys
文件的作用
~/.ssh/authorized_keys
文件用于存储允许免密登录的公钥。
当客户端使用 SSH 密钥登录时,服务器会检查该文件中的公钥是否匹配,以决定是否允许无密码访问。
chmod 600 ~/.ssh/authorized_keys # 只允许文件所有者读写
chmod 700 ~/.ssh # 目录必须是仅用户可访问
chown user:user ~/.ssh -R # 确保所有权正确
确保远程服务器 SSH 配置允许密钥登录
在远程服务器 ,编辑 SSH 配置:
代码语言:javascript代码运行次数:0运行复制/etc/ssh/sshd_config
确保以下参数正确:
代码语言:javascript代码运行次数:0运行复制PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no # 可选,禁止密码登录,提高安全性
然后重启 SSH 服务:
代码语言:javascript代码运行次数:0运行复制
systemctl restart sshd # Linux 通常使用
问题2
.shy
web.wiki.word 是 Contexts 用来管理笔记与文档的工具,Contexts 的文档以 .shy 作为文件格式的后缀。 语法也非常简单,就是命令加参数,像命令行一样使用。其中命令就是 Contexts 中的所有的工具名。 所以 Contexts 中的所有工具都可以在文档中直接使用。
包括 Contexts 的官网 web.wiki.portal,也只是在 web.wiki.word 上包装了一个布局和路由而已。 官网的所有内容也是用 .shy 文档来保存的,其中所有的内容在 web.wiki.word 中也一样显示。
Contexts 的文档不需要单独存放,直接和代码保存在一起,都在 ./src/ 目录下, Contexts 在构建时,会根据代码结构,将关联的文档打包进 bin 文件中,以便在运行时随时查看
src目录下是模块化的代码加文档,在编译时,会打包到程序文件里。如果你的笔记比较多,可以创建一个代码库,存在usr的子目录里,在etc/miss.sh 添加 ish_miss_prepare https://xxx,即可自动维护你的文档库。
ContextOS 编辑器也是一个框架,支持各种语言和功能的扩展,只需要添加模块即可。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。原始发表:2025-02-08,如有侵权请联系 cloudcommunity@tencent 删除实践云主机登录管理配置