codimd在线协作文档部署

前言

codimd是一款在线的markdown编辑器,用于实时在线协作编辑,非常适合需要多人合作记录重点信息的情况。

安装部署

github地址

https://github.com/hackmdio/codimd

官方文档介绍了多种部署方式,其中docker部署最为快捷,本文介绍此场景下部署codimd的流程。

安装docker和docker-compose

1.安装https协议、CA证书、dirmngr

1
2
3
apt-get update
apt-get install -y apt-transport-https ca-certificates
apt-get install dirmngr

2.添加GPG密钥并添加更新源

1
2
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add -
echo 'deb https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/ buster stable' | sudo tee /etc/apt/sources.list.d/docker.list

3.系统更新以及安装docker

1
2
apt-get update
apt install docker-ce

4.启动docker服务器

1
service docker start\

5.安装compose

1
apt install docker-compose

部署codimd

之前的老教程多数会使用本地的数据库,最新的docker部署方式已经不需要自己创建数据库,可拉取一个postgreSQL数据库镜像作为替代

我们只需要创建并编辑一个docker-compose.yml

将以下三项与后面数据库配置CMD_DB_URL的参数对应起来即可

1
2
3
POSTGRES_USER=codimd
POSTGRES_PASSWORD=change_password
POSTGRES_DB=codimd

完整的docker-compose.yml文档

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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.3.2
environment:
- CMD_DB_URL=postgres://codimd:change_password@database/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: {}

接着运行docker-compose up -d

等待镜像拉取完毕并运行,使用以下命令查看运行状态

1
docker logs -f -t --tail 10  codimd_codimd_1

如发现如下日志,表示已正常监听到3000端口

使用浏览器能正常访问,得到如下界面,说明部署成功。

使用

点击登录位置随便输入账号密码进行注册

然后登录,创建新文档,会生成一个随机的url,本页面可使用markdown语法进行编辑。

需要合作编辑时,只需要将url发给合作者,对方注册后即可共同编辑,在完成所有工作后也可以导出此文档。

最后记得停止docker容器.

参考文档

官方文档:
https://hackmd.io/c/codimd-documentation/%2Fs%2Fcodimd-docker-deployment

docker、docker-compose相关安装:
https://zhuanlan.zhihu.com/p/82361096


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!