文章来自我的博客:https://blog.ljyngup.com/archives/705.html/

看到感觉挺有意思的,有空找个空闲的VPS搭建一下。

转自官方Github仓库


ArtiPub (Article Publisher的简称,意为"文章发布者")是一款开源的一文多发平台,可以帮助文章作者将编写好的文章自动发布到掘金、SegmentFault、CSDN、知乎、开源中国等技术媒体平台,传播优质知识,获取最大的曝光度。ArtiPub安装简单,提供了多种安装方式,可以一键安装使用,安装一般只要5分钟。

ArtiPub目前支持文章编辑、文章发布、数据统计的功能,后期我们会加入存量文章导入、数据分析的功能,让您更好的管理、优化您的技术文章。此外,我们还会接入更多媒体渠道,真正做到让文章随处可阅。

预览截图

平台管理

文章管理

文章编辑

文章发布

Chrome插件

安装要求

Docker安装

  • Docker: 18.03
  • Docker Compose: 1.24.1

NPM或源码安装

  • MongoDB: 3.6+
  • NodeJS: 8.12+

安装方式

ArtiPub提供3种安装方式如下。

  • Docker (大约5分钟): 适合对Docker有一定基础的开发者
  • npm (大约3分钟): 适合熟悉Node.js或npm的开发者
  • 源码 (大约5-10分钟): 适合希望了解内核原理的开发者

通过Docker安装

通过Docker,可以免去安装MongoDB的步骤,也是我们最推荐的安装方式。使用Docker安装ArtiPub前,请确保您安装了Docker以及Docker Compose。

在您的项目目录下创建docker-compose.yaml文件,输入如下内容。

version: '3.3'
services:
app:
image: "tikazyq/artipub:latest"
environment:
MONGO_HOST: "mongo"
ARTIPUB_API_ADDRESS: "localhost:3000" # 后端API地址,如果安装地址不在本机,请修改为服务器IP地址+端口号(默认为3000)
ports:
- "8000:8000" # frontend
- "3000:3000" # backend
depends_on:
- mongo
mongo:
image: mongo:latest
restart: always
ports:
- "27017:27017"

然后在命令行中输入如下命令。

docker-compose up

然后在浏览器中输入http://localhost:8000可以看到界面。

注意⚠️,如果您的Docker宿主机不是本机,例如您用了Docker Machine或者Docker服务在其他机器上,您需要将环境变量ARTIPUB_API_ADDRESS改为宿主机IP+端口号(默认3000)。然后,在浏览器输入http://<宿主机IP>:8000即可看到界面。

通过npm包安装

如果您对npm熟悉,且已经有MongoDB的环境,这是最为快捷的方式。

安装npm包

npm install -g artipub

安装npm包时,为了加速下载速度,可以加入--registry参数来设置镜像源(后面源码安装时也可以这样操作)

npm install -g artipub --registry=https://registry.npm.taobao.org

运行ArtiPub

artipub start

该命令默认会使用localhost:27017/artipub为MongoDB数据库链接。输入如下命令可以看更多配置,例如配置数据库等。

artipub -h

成功运行后,在浏览器中输入http://localhost:8000可以看到界面。

通过源码安装

克隆Github Repo

git clone https://github.com/crawlab-team/artipub

安装npm包

cd artipub
npm install

启动前端

npm run start:frontend

启动后端

npm run start:backend

配置数据库

数据库的配置在./config.js中,可以按情况配置。

配置后端API地址

如果您部署的服务不在本机,需要在./src/config/config.ts中将apiEndpoint改成对应的IP地址+端口。

为什么创建ArtiPub

程序员和技术人员常常会写技术文章和博客,用作技术分享、产品分享或提供咨询等等。技术博主通常需要在多个媒体渠道发布文章,例如掘金、SegmentFault、CSDN、知乎、简书、微信公众号等等,以求最大的关注度。但是,发布文章到这么多平台费时费神,需要不断地复制粘贴;同时,作者想查看阅读数时还需要来回切换各个网站来进行统计。这非常不方便。ArtiPub主要就是为了来解决上述这些问题的。

市面上已经存在一文多发平台了,例如OpenWrite,为何还要创建ArtiPub呢?或许其他一文多发平台也是一个替代方案,但它们要求用户将自己的账户信息例如Cookie或账号密码上传到对方服务器,这很不安全,一旦平台发生问题,自己的账户信息会遭到泄漏。虽然我相信一般平台不会恶意操作用户的账户,但如果出现误操作,您的账户隐私将遭到泄漏,平台上的财产也可能遭到损坏,有这样的风险需要考虑。ArtiPub不要求用户上传账户信息,所有账户信息全部保存在用户自己的数据库里,因此规避了这个安全风险。

另外,由于ArtiPub是开源的,JS源码也比较易于理解,可扩展性很强,用户如果有其他平台的接入需求,完全可以更改源码来实现自己的需求,不用等待平台更新。开发组也将持续开发ArtiPub,将其打造得更实用和易用。

支持平台

ArtiPub:一款开源的一文多发平台的更多相关文章

  1. 再见丑陋的 SwaggerUI,这款开源的API文档生成神器界面更炫酷,逼格更高!

    一般在使用 Spring Boot 开发前后端分离项目的时候,都会用到 Swagger.Swagger 是一个规范和完整的框架,用于生成.描述.调试和可视化 RESTful 风格的 Web API 服 ...

  2. 终于找到可以一文多发的平台了! openwrite.cn

    openwrite.cn 一文多发平台 有时候自己辛苦写了几个小时的技术文章,被爬虫抓走.自己去全平台一个一个发,又过于麻烦.而且每个平台都不一样,发文同步很困难.那么终于有了一款一文多发的利器:Op ...

  3. 请不要浪费你的生命,一文多发推广就用它(OpenWrite)

    你我的共同困惑 你是否跟我一样?刚开始尝试写作,自己没有名气,有以下几个困惑: 想要推广自己,想在多个平台发文? 多平台发文之后,想要看各个平台的流量如何? 有了流量,想要引流用户到自己的网站? 网站 ...

  4. 一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)

    在目前的软件项目中,都会较多的使用到对文档的操作,用于记录和统计相关业务信息.由于系统自身提供了对文档的相关操作,所以在一定程度上极大的简化了软件使用者的工作量. 在.NET项目中如果用户提出了相关文 ...

  5. OpenWrite一款博客可一文多发的实用工具

    前言 许多网友想看一文多发的OpenWrite,今天,它来了!别问落地价,因为内测无价! 这款实用工具,可支持十大博客平台一键发布,是博主们的发文神器 你看它多种平台.一键管理.后台界面优雅.还有签到 ...

  6. 几款开源的hybird移动app框架分析

    几款开源的Hybrid移动app框架分析 Ionic Onsen UI 与 ionic 相比 jQuery Mobile Mobile Angular UI 结论 很多移动开发者喜欢使用原生代码开发, ...

  7. pylot是一款开源的web性能测试工具

    pylot是一款开源的web性能测试工具,http://www.pylot.org/ 参考文档:http://www.pylot.org/gettingstarted.html很容易上手 使用分为以下 ...

  8. C++100款开源界面库[转]

    (声明:Alberl以后说到开源库,一般都是指著名的.或者不著名但维护至少3年以上的.那些把代码一扔就没下文的,Alberl不称之为开源库,只称为开源代码.这里并不是贬低,像Alberl前面那个系列的 ...

  9. 60款开源云应用【Part 2】(60 Open Source Apps You Can Use in the Cloud)

    60款开源云应用[Part 2](60 Open Source Apps You Can Use in the Cloud) 本篇翻译自http://www.datamation.com/open-s ...

随机推荐

  1. Android反编译三件套 apktool 、dex2jar、jd-gui

    1.还是老话下载三件套(点击下载) 或者自己在百度搜索下载 2.使用apktool反编译apk cd到D:\TESTCODE\android\android反编译三件套目录下 输入java -jar ...

  2. CTO说|非容器化应用怎么玩多云?Kubernetes不管我们管啊

    Kubernetes已经成为容器编排系统的事实标准,是现在主流的跨云容器化应用操作系统. 但是,Kubernetes的目标并不是容器本身,而是承载其上的应用,本质上是为了解决(容器化)应用上云这个难题 ...

  3. python暴力破解压缩包密码

    啥也不说,直接上代码 #-*-coding:utf-8-*- import zipfile #生成1-999999的数字密码表, 要是有别的密码类型,对密码表改造一下就可以了,也可以上网下载某些类型的 ...

  4. python条件判断语句

    # 条件判断(if)语句: # 语法1: if 条件表达式 : 单行语句 # 语法2: if 条件表达式 : # 代码块(多行语句) # 执行的流程:if语句在执行时,会先对条件表达式进行求值判断, ...

  5. 【C_Language】---常用C语言控制台函数总结(持续更新)

    写了这么久的C程序,每次看到输出的结果都是从上往下排列的黑白框,有没有感觉很无聊啊?今天再次总结一个常用的控制台函数,能够帮助你做好一个好看的界面. 1.设置光标位置代码如下: int main(vo ...

  6. 替代not in 和 in 的办法

    在程序中,我们经常会习惯性的使用in和not in,在访问量比较小的时候是可以的,但是一旦数据量大了,我们就推荐使用not exists或者外连接来代替了.如果要实现一张表有而另外一张表没有的数据时, ...

  7. 高通量计算框架HTCondor(一)——概述

    目录 1. 正文 2. 目录 3. 参考 4. 相关 1. 正文 HTCondor是威斯康星大学麦迪逊分校构建的分布式计算软件和相关技术,用来处理高通量计算(High Throughput Compu ...

  8. Redis(五):hash/hset/hget 命令源码解析

    Redis作为nosql数据库,kv string型数据的支持是最基础的,但是如果仅有kv的操作,也不至于有redis的成功.(memcache就是个例子) Redis除了string, 还有hash ...

  9. 【java面试】框架篇之Spring

    1.你如何理解Spring? 具体来说Spring是一个轻量级的容器,用于管理业务相关对象的.核心功能主要为:IOC,AOP,MVC. IOD:控制反转,将对象的创建过程交给容器,让容器管理对象的生命 ...

  10. linux pycharm 安装

    Ubuntu安装之python开发   什么??公司要用Ubuntu(乌班图)?不会用??怎么进行python开发??? 乌班图操作系统下载地址:http://releases.ubuntu.com/ ...