前言
大家都很羡慕博主的高产,纷纷问我有什么技巧。我的回复是手熟,多写,那么多写就需要一个比较好的工具,所以我这里给大家介绍一个在线markdown文档平台,让大家可以随时书写文档和博客。这里我选择的是codimd,我把它部署到了自己在我的腾讯云轻量应用服务器上以便提高访问速度,写下这篇记录自己部署和使用的心得,供大家参考。
什么是CodiMD
CodiMD 是一个开源项目,可实现 MarkDown 文档的协同编辑,功能与 HackMD 一致(这好像是废话),项目地址在 GitHub的hackmdio下,部署极为简单。适合无法正常使用 HackMD 的用户将其部署到自己的国内服务器,安全稳定。
开源地址
CodiMD
程序的安装
安装的准备
首先准备腾讯云的轻量应用服务器,系统为centos,不同系统间方式大同小异。
安装的步骤
- 在MySQL建立codimd使用的数据库
- 安装git
- 安装docker
- 安装docker-compose
- 安装codimd
创建数据库
这里博主用的轻量数据库(相关测评),如果没有也可以自建数据库。
这里以宝塔为例直接添加一个数据库。
请注意允许所有ip访问该数据库,因为docker容器访问不属于本地ip访问。
安装git
代码语言:txt复制yum install git
安装docker
代码语言:txt复制yum install docker
安装docker compose
代码语言:txt复制yum install docker-compose
安装codimd
在root文件夹下创建一个目录(如md),目录内创建docker-compose.yml
填入以下内容:
代码语言:txt复制version: "3"
services:
database:
image: postgres:11.6-alpine
environment:
- POSTGRES_USER=codimd
- POSTGRES_PASSWORD=change_password
- POSTGRES_DB=codimd
volumes:
- "database-data:/var/lib/postgresql/data"
restart: always
codimd:
image: hackmdio/hackmd:2.4.1
environment:
- CMD_DB_URL=postgres://codimd:change_password@database/codimd
# CMD_DB_URL 格式为
# 数据库连接协议://用户名:密码@数据库主机:数据库端口/数据库名
#这里我的MySQL是在docker的宿主机本地安装的,但是主机ip没有写localhost,因为localhost在docker容器里面会解释成容器本身的ip,这样就连不上安装在宿主机的MySQL,所以我使用:ip addr show docker0,查看了宿主机的ip为172.17.0.1,然后使用宿主机ip代替localhost,就达到容器内部访问外部的MySQL数据库的目的
#例:CMD_DB_URL=mysql://codimd:change_password@172.17.0.1:3306/codimd
- CMD_USECDN=false
depends_on:
- database
ports:
- "3000:3000"
volumes:
- upload-data:/home/hackmd/app/public/uploads
restart: always
volumes:
database-data: {}
upload-data: {}
保存退出。
命令行里cd进docker-compose.yml所在的文件夹,执行命令
代码语言:txt复制cd md
docker-compose up -d
检查安装
安装完成后可以使用docker ps命令查看codimd是否已经运行
查看运行日志:执行以下命令
代码语言:txt复制docker logs -f -t --tail 行数 容器名
通过上面的docker ps命令中看到容器名为codimd_codimd_1
所以我执行
代码语言:txt复制docker logs -f -t --tail 10 codimd_codimd_1
提示
代码语言:txt复制HTTP Server listening at 0.0.0.0:3000
#这样表示安装成功了
放行端口
codimd默认是运行在3000端口的,因此需要防火墙放行
- 防火墙放行3000端口
- 腾讯云轻量服务器管理面板防火墙规则放行3000端口
CodiMD 使用
基本使用
完成以上步骤,即可访问服务器的 3000 端口来到 CodiMD 主页(如下图)。注册登录后即可进行文档档创建与协同编辑。其他协作者可以放心大胆地使用,后台密码均进行了严格加密,密码防泄漏做得很好的
反向代理
反向代理设置,新建一个网站,配置如图
配置反向代理步骤如下:(代理名称随意写一个自己认识的就行)
至此本次教程到此结束,使用腾讯云轻量服务器搭建CodiMD有其他不明白的地方,朋友可以到我博客和我交流
博主站点
博主的个人博客地址是:https://www.hipyt.cn/