CentOS 部署 WBO 在线协作白板

1)WBO 白板工具介绍

1.1)WBO 白板简介

WBO 是一个自由和开源的在线协作白板。它允许多个用户同时在一个虚拟的大型白板上画图。该白板对所有线上用户实时更新,并且状态始终保持。它可以用于许多不同的目的,包括艺术、娱乐、设计和教学。

1.2)WBO 白板特点

  • 要与某人实时协作绘制图形,只需向他们发送白板的 URL。
  • 每个人都可以使用公共白板。
  • 创建一个带有随机名称的私有白板,该白板只能通过其链接访问。
  • 创建一个可命名的私有白板,并自定义其 URL,所有知道它名字的人都可以访问它。

2)本地环境介绍

2.1)本地环境规划

本次实践为个人测试环境,操作系统版本为 CentOS7.6。

hostname本地P地址操作系统版本内核版本node版本
blog10.0.59.114CentOS 7.63.10.0-957.el7.x86_64v16.17.0

2.2)本次实践介绍

  1. 本次实践部署环境为个人测试环境
  2. 在 CentOS 7.6 环境下 WBO 在线协作白板。

3)检查本地环境

3.1)检查本地操作系统版本

检查本地操作系统版本

cat /etc/redhat-release

3.2)检查系统内核版本

检查系统内核版本

uname -r

4)部署 Node.js 环境

4.1)下载 Node.js 安装包

在 /root 目录下,下载 Node.js 安装包,下载版本为 v16.17.0。

cd /root && wget https://nodejs.org/dist/v16.17.0/node-v16.17.0-linux-x64.tar.xz

4.2)解压 Node.js 安装包

在 /root 目录下,解压 Node.js 安装包

tar -xvJf node-v16.17.0-linux-x64.tar.xz

4.3)链接二进制文件

将 /root/node-v16.17.0-linux-x64/bin/ 下的二进制文件链接到 /usr/local/bin 下

ln -s  /root/node-v16.17.0-linux-x64/bin/node /usr/local/bin/node
ln -s /root/node-v16.17.0-linux-x64/bin/npm /usr/local/bin/npm

4.4)配置环境变量

在 /etc/profile 文件中,尾行新增以下两行:

vim /etc/profile
export NODE_HOME=/root/node-v16.17.0-linux-x64/bin/
export PATH=$PATH:$NODE_HOME:/usr/local/bin/

使变量生效

source /etc/profile

4.5)查看 node 版本

查看 node 版本

npm -v
node -v

image.png

5)下载 WBO 源码包

5.1)下载 WBO 源码包

GitHub 下载 WBO 源码包

yum install git -y

git clone https://github.com/lovasoa/whitebophir.git

5.2)查看源码目录

查看 WBO 白板工具源码目录

ls ~/whitebophir/
tree -L 2 ~/whitebophir/

6)部署 WBO 在线协作白板

6.1)进入 WBO 源码目录

进入 WBO 源码目录

cd whitebophir/

6.2)设置 npm 镜像源

npm 设置国内淘宝镜像源

npm config set registry https://registry.npmmirror.com

6.3)安装依赖

安装 WBO 项目的依赖

npm install --production

6.4)启动 WBO 服务

启动 WBO 服务

PORT=5001 HOST=0.0.0.0 npm start

后台启动 WBO 服务

PORT=5001 HOST=0.0.0.0 npm start &

6.5)设置 service 服务

设置 WBO 为 service 服务,使用 systemctl 管理。

vim /etc/systemd/system/wbo.service
[Unit]
Description=wbo
After=network.target

[Service]
Type=simple
Environment="PORT=5001" "HOST=0.0.0.0"
ExecStart=/root/node-v16.17.0-linux-x64/bin/npm start
ExecReload=/root/node-v16.17.0-linux-x64/bin/npm restart
ExecStop=/root/node-v16.17.0-linux-x64/bin/npm  stop
WorkingDirectory=/root/whitebophir/
Restart=always
User=root
Group=root
Environment=NODE_ENV=production

[Install]
WantedBy=multi-user.target

启动 wbo 服务

systemctl daemon-reload
systemctl start wbo && systemctl enable wbo

重启服务器后,查看 wbo 服务状态。

systemctl restart wbo
systemctl status wbo

image.png

6.6)本地测试 WBO 服务

在本地访问 http://10.0.59.114:5001/,有 wbo 网页返回则部署成功。

image.png

6.7)防火墙和 SELinux 设置

设置 SELinux

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
cat /etc/selinux/config | grep disabled
setenforce 0

关闭防火墙,如果想要开启防火墙,需放行 5001 端口。

systemctl stop firewalld && systemctl disable firewalld

7)访问 WBO 在线协作白板

7.1)访问 WBO 首页

访问地址:http://10.0.59.114:5001/,将IP替换为自己服务器IP地址。

image.png

7.2)创建私人白板

创建可命名的私人白板,可以愉快的使用 WBO 白板了。

image.png
image.png

7.3)在线协作

进入公共白板,进行绘图操作。

image.png
image.png

在另外一台电脑或浏览器打开,可以进行协作绘图。

image.png
image.png

8)WBO 在线协作白板使用总结

wbo 白板工具目前仅支持基本的绘画、文字和标注工具,暂不支持高级功能如形状、图表等。此外,在进行协作时,需要确保网络连接稳定,否则可能会发生卡顿或数据丢失等问题。总体而言,wbo 是一款简单易用的在线白板协作工具,广泛应用于团队合作、教学、头脑风暴等场景,具有较高的应用价值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/210033.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

生物教师个人简历(精选21篇)

以下21篇简历内容以生物教师招聘需求为背景制作,大家可以灵活借鉴,希望能帮助大家在众多候选人中脱颖而出。 生物教师个人简历下载(在线制作):百度幻主简历或huanzhuv.com 生物老师简历1: 求职意向 求职…

Java核心知识点整理大全27-笔记(已完结)

30. 云计算 30.1.1. SaaS SaaS 是 Software-as-a-Service(软件即服务) 30.1.2. PaaS PaaS 是 Platform-as-a-Service 的缩写,意思是平台即服务。 把服务器平台作为一种服务提供的 商业模式。通过网络进行程序提供的服务称之为 SaaS(Softw…

一键解决GIF转PNG难题,批量处理图片,轻松优化你的图片管理!

亲爱的朋友们,你是否经常遇到需要将GIF格式的图片转换成PNG格式的困扰?批量处理图片又是否让你感到烦恼?现在,我们为你带来了一款全新的图片处理工具——轻松转换GIF到png,批量处理图片,优化你的图片管理 …

springBoot整合quartz

springBoot整合quartz 文章目录 springBoot整合quartz 导坐标 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-quartz</artifactId></dependency>定义任务&#xff0c;不需要定义为Bean&#x…

新功能?浅谈nuclei的反制思路

code新功能&#xff1f; 写poc时&#xff0c;习惯性查官方文档的时候&#xff0c;注意到了一个新的功能&#xff1a;code 链接直达&#xff1a;https://docs.projectdiscovery.io/templates/protocols/code 大概翻译下&#xff1a; Nuclei 支持在主机操作系统上执行外部代码。…

注意力机制及Transformer-3GPT版

#pic_center R 1 R_1 R1​ R 2 R^2 R2 目录 知识框架No.1 自注意力机制(self-attention)一、输入的种类以及表示1、输入是a vector2、输入是a set of vectors(一段文字)3、输入是a set of vectors(一段音频)4、输入是a set of vectors(一段图谱)5、输入是a set of vectors(一个…

4个Pycharm高效插件

大家好&#xff0c;Pycharm是Python最受欢迎的集成开发环境之一&#xff0c;它具有良好的代码助手、漂亮的主题和快捷方式&#xff0c;使编写代码变得简单快捷。话虽如此&#xff0c;开发者仍可以通过使用一些插件来提高在Pycharm中编写Python代码的效率和乐趣&#xff0c;在市…

00后卷王真的很卷吗?

前言 都在传00后躺平、整顿职场&#xff0c;但该说不说&#xff0c;是真的卷&#xff0c;感觉我都要被卷废了... 前段时间&#xff0c;公司招了一个年轻人&#xff0c;其中有一个是00后&#xff0c;工作才一年多&#xff0c;直接跳槽到我们公司&#xff0c;薪资据说有18K&…

Docker下搭建MySQL主从复制

目录 主从复制简介 主从复制搭建 主从复制简介 主从复制&#xff0c;是用来建立一个和主数据库完全一样的数据库环境&#xff0c;称为从数据库&#xff1b;主数 据库一般是准实时的业务数据库。 主从复制的作用 做数据的热备。作为后备数据库&#xff0c;主数据库服务器故…

Elasticsearch:么是向量嵌入?

向量嵌入定义 向量嵌入 (vector embeddings) 是一种将单词、句子和其他数据转换为捕获其含义和关系的数字的方法。 它们将不同的数据类型表示为多维空间中的点&#xff0c;其中相似的数据点更紧密地聚集在一起。 这些数字表示可以帮助机器更有效地理解和处理这些数据。 单词和…

Jenkins持续集成之修改jenkins工作目录

修改jenkins工作目录 一般不建议把工作目录放到默认的C盘&#xff0c;故可以更改到其他盘中 前置条件&#xff1a;先在其他盘中新建工作目录的文件&#xff1b;如下图 1、首先打开任务管理器&#xff0c;找到服务中的Jenkins进程 2、右击点击转到详细信息&#xff1b; 3、再右…

分享4个工具,轻松搞定PDF和图像中提取文本

大型语言模型已经席卷了互联网&#xff0c;导致更多的人没有认真关注使用这些模型最重要的部分&#xff1a;高质量的数据&#xff01; 本文旨在提供一些有效从任何类型文档中提取文本的技术。 Python库 本文专注于Pytesseract、easyOCR、PyPDF2和LangChain库。实验数据是一个…

shell 脚本计算距离最近的坐标

shell 脚本计算距离最近的坐标 坐标数据文件geo.log格式如下&#xff1a; beijing(116.405285,39.904989) tinajin(117.190182,39.125596) hebei(114.502461,38.045474) shanxi(112.549248,37.857014) neimenggu(111.670801,40.818311) liaoning(123.429096,41.796767) jilin(1…

012 OpenCV sobel边缘检测

目录 一、环境 二、soble原理介绍 三、源码实验 一、环境 本文使用环境为&#xff1a; Windows10Python 3.9.17opencv-python 4.8.0.74 二、soble原理介绍 Sobel边缘检测是一种广泛应用于图像处理领域的边缘检测算法&#xff0c;它通过计算图像灰度函数在水平方向和垂直…

包装材料ERP是什么?包装材料ERP有什么用

市面上的包装材料种类多种多样&#xff0c;而这些差异化的包装材料对应的产成品规格、型号、质量、销售策略和生产工艺等方面存在诸多差异。 另外&#xff0c;通常包装材料企业的营销渠道比较广泛&#xff0c;不同的销售平台有多样化的业务流程和管理方式&#xff0c;相同的商…

数字员工「取数宝」上新!4大优势,解决电商取数难题

全域电商&#xff0c;是近几年的新趋势&#xff0c;几乎所有商家都在布局全域&#xff0c;追求全域增长。但商家发现&#xff0c;随着投入成本的上涨&#xff0c;利润却没有增加。 其中最为突出的是——商家为保证全域数据的及时更新&#xff0c;通过堆人头的方式完成每日取数…

idea汉化

所有的jetbrains 汉化包下载地址&#xff0c; 包括leda &#xff0c;pycharm /&#xff0c;datagrip 等软件&#xff0c;&#xff0c;所有方法都一样&#xff1a;搜索对应的版本需要的包 下载后&#xff0c;在idea的插件中选择从磁盘加载&#xff0c;然后重启 &#xff0c;即可…

11.9密码加密,加盐算法(手动实现)

一.Spring提供了mb5加密的方法 注意:这种加密不安全,是有规律的,可以被暴力穷举(彩虹表). 二.加盐加密(每次调用都是随机的,无规律的) 1.思路: 每次调用该方法产生唯一的盐值, 加上明文密码, 再经过md5加密形成最终的密码. 三.代码实现 package com.example.demo.common;im…

C语言之结构体

一.前言引入. 我们知道在C语言中有内置类型&#xff0c;如&#xff1a;整型&#xff0c;浮点型等。但是只有这些内置类 型还是不够的&#xff0c;假设我想描述学⽣&#xff0c;描述⼀本书&#xff0c;这时单⼀的内置类型是不⾏的。描述⼀个学⽣需要名字、年龄、学号、⾝⾼、体…

【数据结构(五)】递归

文章目录 1. 递归的概念2. 递归能解决什么问题3. 递归的规则4. 递归实际应用案例4.1. 迷宫问题4.2. 八皇后问题4.2.1. 思路分析4.2.1. 代码实现 1. 递归的概念 简单的说: 递归就是方法自己调用自己&#xff0c;每次调用时传入不同的变量。递归有助于编程者解决复杂的问题&…