1.使用Dockerfile基于7.4-fpm-buster镜像搭建php7.4微服务环境
2.使用 Docker 搭建 Calibre-Web 在线书库
3.同一个ed2k链接用不同的端口端口下载工具(如emule,迅雷等)下载有什么不同?
4.云服务器的公网ip可以映射到本地电脑吗?
5.我早就看现在的工作流不爽了!- 前端使用 Jenkins
6.稳扎稳打 部署丝滑 开源即时通讯(IM)项目OpenIM源码部署流程(linux windows mac)
使用Dockerfile基于7.4-fpm-buster镜像搭建php7.4微服务环境
已经掌握了Dockerfile构建镜像的技巧,搭建php7.4微服务环境就变得更加高效。工具工具我们不再需要手动下载和编译软件,端口端口也不用担心兼容问题,映射源码映射源码仅需在Docker中安装最基础的工具工具ue5源码编译软件,选择fpm版本的端口端口PHP出于对微服务的考虑,它更适合docker-compose发布,映射源码映射源码避免了与apache不兼容的工具工具困扰。
选择的端口端口php镜像版本是php:7.4-fpm-buster,基于debian操作系统。映射源码映射源码首先,工具工具我们拉取镜像并启动临时容器,端口端口检查其内部结构,映射源码映射源码包括php程序、工具工具配置文件和fpm组件。通过端口映射,便于与nginx容器配合运行。
如果需要php源代码,可以使用docker-php-source命令导入和删除。安装php扩展,例如mysql,使用docker-php-ext-install,配置参数则通过docker-php-ext-configure,启用扩展则用docker-php-ext-enable。福哥通过在临时容器手动安装环境,然后整理到Dockerfile中,以清晰展示整个过程。
Dockerfile中包含了apt更新、依赖库和工具安装、修改ghost源码配置文件设置、时区调整、测试验证等步骤。最终,通过Dockerfile,我们可以直接基于7.4-fpm-buster镜像搭建出php7.4的微服务环境,极大地简化了基础环境配置。
下一课,将继续利用Dockerfile的技巧,构建TFUMS项目的运行环境,敬请期待。
使用 Docker 搭建 Calibre-Web 在线书库
Calibre 是一款功能强大的电子书库管理工具,支持书籍的便捷管理和格式转换。Calibre-Web 则提供在线访问书库、发送书籍至Kindle、使用阅读器访问书库等服务。本篇文章将介绍如何使用 Docker 或源码部署 Calibre-Web。
在使用 Docker 部署 Calibre-Web 之前,需要先安装 Docker。可以通过官方文档中的安装方法完成,包括安装依赖、添加阿里镜像源、列出可用版本以及安装最新版本等步骤。安装成功后,使用命令启动 Docker,并运行 Docker 镜像。
为了部署 Calibre-Web,需要查看可用的 Docker 镜像。常用的unity 源码商店镜像有两个选项:technosoft/calibre-web 和 linuxserver/calibre-web。前者自带电子书转换功能,但镜像较大,有 1.5G 左右;后者较为轻量,无电子书转换功能。部署时,还需确保防火墙开放 端口。
创建并运行 Docker 容器,使用命令 `docker run`,并指定参数如 `-d`(后台运行)、`-p`(端口映射)、`-v`(挂载存储卷)等。创建过程中,会从 GitHub 下载文件,速度较慢。当出现 “Launching Calibre-Web” 时,表明服务启动完成。
对于不希望使用 Docker 的情况,可以使用源码部署 Calibre-Web。首先,需要安装 Python3 环境,并从指定链接下载 Calibre-Web 源码。解压后,使用 `pip install -r requirements.txt` 下载必要的包和模块。接着,确保防火墙开放 端口,并启动服务。
完成部署后,通过浏览器访问 Calibre-Web,使用默认用户 `admin` 和密码 `admin` 登录。yjn主机源码系统会提示选择数据库位置,将 `metadata.db` 文件(可通过安装的 Windows 版本的 Calibre 创建得到)拷贝到 `/calibre/books/` 目录下,并修改权限。默认情况下,上传书籍的权限被关闭,需要在设置中进行修改。此外,还可以从已有的 Calibre 书库导入书籍或使用 IP:/opds 方式添加书库。
部署 Calibre-Web 后,可以通过 Zhihu On VSCode 等工具进行创作和发布。
同一个ed2k链接用不同的下载工具(如emule,迅雷等)下载有什么不同?
一般情况下是端口问题,只能换个端口试试了,要么就找网管在路由里做端口映射。1,运行eMule,断开与服务器的连结2,点击:选项 - 服务器 a, 不要选择"在启动时自动更新服务器清单" b, 不要选择"连结到一个服务器时更新服务器清单" c, 不要选择"连结到一个客户端时更新服务器清单" d, 选择"只自动连结到静态服务器"3, 打开eMule服务器窗口,鼠标右键点击任意一个服务器,从下拉菜单中选择"删除所有服务器"4,去.de/list.html网站更新服务器清单,并选择一些常用的服务器设定为静态服务器。该网站所有列出服务器已经过确认,不会出现"假-服务器"问题。完成以上设定后,基本可以保证eMule客户端不会尝试连结那些没经确认或被怀疑有危害的服务器,同时也避免这类服务器出现在服务器窗口。另外,我无法确定使用KAD无服务器网络是linuxgit源码下载否能避免这类风险。因为类似于"假-服务器","假-kad客户端"同样可以建立,而且似乎更难确认。只要把电驴端口改成TCP UDP (相应的映射端口也要改哦) 就可以打开ED2K服务器了 现在的 一般都被服务器屏掉了,有的宽带提供商在封杀P2P象长城宽带就对热点端口设了限(封杀BT==) ,如果你发现驴速慢了,不如换下端口Kad是Kademlia的简称,eMule的官方网站在年2月日正式发布的 eMule v0.b中,Kad开始正式内嵌成为eMule的一个功能模块,可以说从这个版本开始eMule便开始支持Kad网络了。Kad 的出现,结束了之前edonkey时代,在ed圈里只存在着ED2K一种网络的模式,它通过新的协议开创并形成了自己的kad网络,使之和ED2K网络并驾齐驱,而且它还完全支持两种网络,可以在两种网络之间通用。Kad同样也属于开源的自由软件。它的程序和源代码可以在官方网站 上下载。 Kad 网络拓扑的最大特点在于它完全不需要服务器,我们都知道传统的ed2k网络需要服务器支持作为中转和存储hash列表信息,kad可以不通过服务器同样完成ed2k网络的一切功能,你唯一要做的就是连线上网,然后打开kad。Kad需要UDP端口的支持,之后Emule会自动按照客户端的要求,来判断它能否自由连线,然后同样也会分配给你一个id,这个过程和我们ed2k的高id和低id检查很像,不过这个id所代表的意义不同于ed2k网络,它代表一个是否“freely”的状态。Kad和ed2k网络有着完全不同的观念但是相同的目的: 都是搜索和寻找文件的源。 Kad网络的主要的目标是做到不需要服务器和改善可量测性。相对于传统的ed2k服务器只能处理一定数量的使用者(我们在服务器列表也都看到了,每个服务器都有最大人数限制),而且如果服务器比较大连接人数过多,还会严重的的拖垮网络。而Kad能够自我组织,并且自我调节最佳的使用者数量以及他们的连接效果。因此, 它更能使网络的损失达到最小。由于具备了以上所叙述的功能,Kad也被称之为Serverless network(无服务器网络)。虽然目前一直处于开发阶段(alpha stage) 。但毫无疑问,它无可比拟的优势,将会使它成为p2p的明天。可能很多朋友会关注, kad网络没有高低id的计算原则,是否对于低id来言就畅通无阻了呢?我们大家知道在ed2k网络里面,我们的id是通过ip进行如下的算法计算得出的设我们的IP = A.B.C.D那么我们的ID number= A + *B + **C + ***Dlow ID的产生是由于我们的ID计算结果小于.即 ID number= A + *B + **C + ***D < Kad的 id计算原则并不是象上面那样,他更关注我们是否open和freely。但是kad里面是如何计算我们的id呢?事实上它的计算方法是这样ID number=***A+**B+*C+D 所以kad其实也有高低id的分别。所以内网用户在使用的时候依旧无法达到
云服务器的公网ip可以映射到本地电脑吗?
云服务器公网IP映射至本地电脑,通过Ngrok实现内网穿透,任意端口映射,解决端口映射难题。
面对IPv4协议,IPv6商用遥遥无期,内网穿透需求日益凸显。运营商分配的内网IP,限制了端口映射的可能。在寻求替代方案时,Ngrok的自建服务器功能脱颖而出,无需受制于人。
要实现内网穿透,可按照以下步骤操作:
1. 创建ngrok目录,编译程序。
2. 更新包管理器、安装git。
3. 克隆ngrok源代码至本地。
4. 安装Go语言环境。
5. 设置环境变量。
6. 生成根证书和服务器证书。
7. 将证书复制至ngrok目录。
8. 生成客户端与服务端。
9. 在工作目录的bin文件夹内,生成ngrok.exe和ngrokd.exe。
. 使用注册表编辑器添加注册表项。
. 启动自定义服务。
. 关闭系统自带防火墙,设置硬件防火墙端口映射。
. 将ngrok.exe复制至c:\windows\system目录,并创建ngrok.cfg配置文件。
. 编写配置文件,声明域名、通道与端口。
. 创建执行BATCH文件,设置开机自动运行ngrok -config "ngrok.cfg" start服务名称。
. 远程桌面测试成功。
通过以上步骤,即可实现在云服务器公网IP与本地电脑之间建立内网穿透连接,实现任意端口映射,解决端口映射难题。
我早就看现在的工作流不爽了!- 前端使用 Jenkins
前端开发者在工作中遭遇的传统工作流程繁琐且效率低下,一个简单的解决方案就是引入Jenkins进行自动化部署。通过在局域网服务器上使用Docker安装并配置Jenkins,可以实现前端项目代码提交后自动打包和上传到服务器,显著提高响应速度和减少沟通成本。
首先,通过SSH连接服务器,创建Jenkins文件夹并配置docker-compose.yml,确保Jenkins容器的端口映射到端口,且将Jenkins配置文件保存在宿主机上,以支持容器的灵活性和持久性。接着,启动Jenkins并完成初次配置,包括设置管理员密码,安装推荐插件等。
针对前端项目,需要安装NodeJS插件,并配置不同项目使用不同版本的Node环境。通过全局工具配置,添加NodeJS的镜像源,安装pnpm等包管理工具。同时,配置NPM registry以优化包的下载速度。对于SSH部署,系统管理中的SSH服务器配置确保了与服务器的连接可用。
为了让团队及时了解构建状态,可以选择安装钉钉插件,设置通知规则。通过Webhook与钉钉机器人连接,构建成功后自动发送通知到钉钉群组。对于Git仓库的集成,无论是Github还是Gitlab,都需要创建Webhook,以便代码提交时触发自动构建。
最后,创建Jenkins任务,设置源码管理为Git,配置构建触发器,确保代码变更能自动触发构建。整个流程完成后,从代码提交到上线部署的自动化工作流得以实现,极大地提升了开发效率。
本文的实践分享可能并不适用于所有大公司,但对于小型项目或个人开发者来说,是一个实用且易上手的工具。作者鼓励读者根据自身需求调整和优化,如有改进意见,欢迎提出。
稳扎稳打 部署丝滑 开源即时通讯(IM)项目OpenIM源码部署流程(linux windows mac)
本文深入介绍了如何使用开源即时通讯项目OpenIM的源码进行部署,简化了复杂过程,让系统功能集成变得简单便捷。OpenIM核心由SDK和Server两部分构成,提供了从消息发送与接收、用户管理到群组管理的全套工具和服务。部署流程分为环境要求、服务器部署和应用服务器部署三大部分。服务器部署中,通过Docker Compose启动MongoDB、Redis、Zookeeper、Kafka和MinIO组件,完成自动部署及端口映射。确保外网IP设置后,执行初始化脚本下载mage,并进行本地编译,适应Linux、Windows、Mac平台。应用服务器部署同样遵循类似的步骤,包括克隆仓库、初始化、编译和启动/停止/检测操作。文章最后,对OpenIM的背景进行概述,强调了其在开源即时通讯领域的重要地位和在数据与隐私安全方面的价值,预示着在后AIGC时代,OpenIM在协同办公软件市场以及企业级应用中的潜力。