1
0
forked from x/ContextOS

opt readme

This commit is contained in:
shaoying 2019-07-30 09:17:02 +08:00
parent ba4a487699
commit e361488fb7
2 changed files with 64 additions and 106 deletions

View File

@ -4,5 +4,5 @@ var version = struct {
host string
self int
}{
"2019-07-29 21:30:06", "ZYB-20190522USI", 304,
"2019-07-30 08:27:51", "mac", 238,
}

View File

@ -1,6 +1,17 @@
## context
context是一种新的应用框架通过模块化、集群化、自动化实现软件的快速开发快速共享快速使用。
context是一种新的编程语言与应用框架通过模块化、集群化、自动化实现软件的快速开发快速共享快速使用。
context是以群聊的形式进行资源的共享。
用户可以创建任意的群聊,把相关人员聚集在一起,每个人可以将自己的设备,共享到群聊中,供组员使用,从而实现资源的最大利用。
每个设备上有一堆命令,用户可以将任意设备上任意命令,添加到自定义的应用界面中,按照自己的需求去组合,从面实现场景化与个性化的定制。
所以每个群聊中会有各种各样自定义的应用,所有的命令都是以群聊作为场景,进行权限的检查与分配。
这些应用,可以像文本与图片一样,在群聊里自由的流动,可以被更快分享出去,再次收藏与组合形成新的应用组件,还可以在聊天记录中直接使用。
context是以分布式的方式进行程序的开发。
开发者,可以用脚本语言开发应用,随时随地的在自己任意设备上加载脚本,然后将动态域名分享出去,应用就可以被用户在群聊中任意的传播。
所有的代码与数据,都在自己设备上,可以进行任意的实时控制。
消灭所有中间环节,让几行代码的小函数,就可以成为独立的应用,从而实现软件的快速开发与快速传播,将任意一行代码的价值,放大成千上万倍。
## 下载安装
在Linux或Mac上可以直接用脚本下载
@ -243,57 +254,6 @@ sub server ctx.nfs.file8 2019-06-16 16:15:23
/Users/shaoying/context/app/sub/var
```
### 开源模式
context是一种通用的应用框架可以快速开发出各种工具。
```
2[15:15:31]ssh> project init
done
2[15:15:31]ssh> project init
```
### 网页模式
### 工具链
### 知识库
### 信息流
```
$ bin/bench
19[11:59:19]nfs> upgrade portal
hash file
ef1998b38af0888cb56dd5e1448a68ad usr/template.tar.gz
6_043a93fa03273744be42c7ab898b2 usr/librarys.tar.gz
19[11:59:19]nfs> upgrade portal
```
#### 完整版
如果对源码有兴趣,使用更丰富的功能,可以直接下载源码,
```
$ git clone https://github.com/shylinux/context.git
```
下载完源码后如果安装了golang就可以对源码直接进行编译
如果没有可以去官网下载安装golang<https://golang.org/dl/>)。
第一次make时会自动下载各种依赖库所以会慢一些。
```
$ cd context && make
```
### 启动服务
bin目录下是各种可执行文件如启动脚本boot.sh与node.sh。
node.sh用来启动单机版contextboot.sh用来启动网络版context。
如下直接运行脚本即可启动context。
启动context后就可以解析执行各种命令即可是本地的shell命令也可以是内部模块命令。
```
$ bin/node.sh
0[03:58:43]ssh>
```
#### 文件管理
调用本地命令,查看当前目录下的文件列表,
```
@ -354,50 +314,39 @@ index name ip mask hard
5 en0 192.168.0.106 24 c4:b3:01:cf:0b:51
```
### 网页服务
### 完整版
命令行模式只是context最基本的功能。context还提供了一个前端框架
让用户可以自由的组合功能列表,满足自己的需求。
使用更丰富的功能,可以直接下载源码,
```
$ git clone https://github.com/shylinux/context.git
```
下载完源码后如果安装了golang就可以对源码直接进行编译
如果没有可以去官网下载安装golang<https://golang.org/dl/>)。
第一次make时会自动下载各种依赖库所以会慢一些。
```
$ cd context && make
```
#### 启动服务
bin目录下是各种可执行文件如启动脚本boot.sh与node.sh。
node.sh用来启动单机版contextboot.sh用来启动网络版context。
如下直接运行脚本即可启动context。
启动context后就可以解析执行各种命令即可是本地的shell命令也可以是内部模块命令。
```
$ bin/node.sh
0[03:58:43]ssh>
```
#### 网页服务
下载完整版的context启动的服务节点就会带有前端网页服务。
#### 工具链
code模块提供了工具链管理。
访问服务节点http://localhost:9094/code
因为工具链,可以直接调用各种命令,为了安全,所以需要用户认证才能授权。
可以在服务节点的终端,直接添加用户认证信息。
如下添加一个角色为root的用户名为who用户密码为ppp。
```
25[11:54:44]ssh> ~aaa role root user who ppp
```
也可以在启动文件中,加入这条配置,记得重启一下服务节点
```
$ cat etc/local.shy
~aaa
role root user who who
```
然后,在登录网页上输入用户名与密码,即可登入网页工作台。
页面工作台,只是对命令进行了一层封装,但提供了更流畅的交互。
以fieldset的形式将各种命令以弱耦合的形式组织在一起。
每一个fielset就是一个命令默认的工具链有
- buffertmux粘贴板管理
- upload文件上传
- dir文件列表管理
- pod节点列表管理
- ctx模块列表管理
- cmd命令行
使用pod选择任意远程节点 然后使用ctx选择任意模块
然后在cmd执行的命令都会发送给指定的节点与模块。
#### 知识库
wiki模块提供了知识库管理。
@ -425,29 +374,38 @@ $ cat etc/local.shy
config wiki_level wiki/some
```
#### 信息流
#### 用户界面
chat模块提供了信息管理
chat模块提供了完整的功能系统
启动服务节点
在一台公共的设备上启动服务节点在etc/local.shy的启动脚本中加入如下两行命令。此设备就可以成为公共服务器。
```
~ssh
cert work serve
work serve
```
启动用户节点
在任意其它设备上,每个用户都可以启动自己的节点在启动脚本etc/local.shy添加如下两行代码此设备就可以成为用户的主控节点
```
~ssh
cert user create
cert work create
work create
```
访问用户节点http://localhost:9094/chat
在启动用户节点时,只要指定服务节点,就可以实现用户注册,自动加入群组。
```
ctx_dev=http://172.0.0.172 bin/boot.sh
```
- 左侧添加群聊
- 右侧添加组件
- 中间发送消息
- 下边发送命令
然后登录 http://172.0.0.172:9095/chat 或 http://127.0.0.127:9095/chat
输入自己的用户名,与初始密码,就可以登录系统。
然后就可以自由的创建群聊、共享设备、实时聊天。
#### 模块开发
```
project hello
compile hello
publish hello
```
### 所有目录