【Docker】通过Docker部署BookStack
为了给公司搭建个知识库重新做了选型,看过了好几个工具包括MkDocs、MM-markdown等,最后选用开源的BookStack作为知识库,原因有三:
BookStack是开源的,并且项目在GitHub中的活跃度很高;
BookStack是PHP开发的,数据库使用的是MySQL5,最最最难得的是他有Docker版本。这样就不需要部署一套LAMP了,直接通过Docker+MySQL就可以运行;
配置方便,提供了后台配置页面,所有的站点内细节都可以通过配置后台解决;
Docker部署
Docker Hub地址:https://hub.docker.com/r/linuxserver/bookstack
镜像拉取:
docker pull linuxserver/bookstack
1
镜像启动:
docker run --name=bookstack \
-e PUID=1000 \
-e PGID=1000 \
-e DB_HOST=172.17.0.5 \
-e DB_USER=yzh \
-e DB_PASS=0623 \
-e DB_DATABASE=bookstackapp \
-p 6875:80 \
-v /Users/yuanzhenhui/Documents/docker_data/bookstack:/config \
--restart unless-stopped \
linuxserver/bookstack
1
2
3
4
5
6
7
8
9
10
11
数据库只能使用5.6.x版本的,不能用5.x以上的MySQL数据库(经过尝试除了5.x的版本外其他版本MySQL数据库连接不上,估计是连接驱动的问题)。
通过DB_HOST、DB_USER、DB_PASS、DB_DATABASE就可以将数据库配置写上了。最后,启动前先将目标数据库bookstackapp建好就可以启动了。
成功启动后会看到[services.d]done的字样,第一次启动的时候会创建表并初始化用户信息。
页面访问
系统启动后可以通过URL登录:http://localhost:6875/login
初始化登录使用以下用户名和密码:
用户名:admin@example.com
密码:password
就可以登录后台了,如果出现一直loading的情况可以刷新一下页面就可以了。
至此,登录后台之后可以配置用户数据和权限信息了。
树莓派搭建脚本
由于BookStack提供了Docker镜像也就是说它可以在树莓派中进行部署,还好Docker也有提供适用于ARM核心的镜像。在下载了镜像后就可以做以下操作了。
BookStack容器创建:
sudo docker run --name=bookstack \
-d \
-e PUID=1000 \
-e PGID=1000 \
-e DB_HOST=172.17.0.2 \
-e DB_USER=yzh \
-e DB_PASS=0623 \
-e DB_DATABASE=bookstackapp \
-p 6875:80 \
-v /mnt/depot/docker/bookstack:/config \
--restart=always \
linuxserver/bookstack
1
2
3
4
5
6
7
8
9
10
11
12
由于树莓派中已经不再支持高版本的MySQL数据库了(可能是因为MySQL被Oracle收购的原因,树莓派没有5.x后的MySQL库了,取而代之的是MariaDB这个同宗同源的数据库,事实证明MariaDB现在是越做越好了~我个人是这么认为的),所以这里用的是ARM版本的Docker镜像,MySQL5容器创建:
sudo docker run -p 3506:3306 \
-e MYSQL_ROOT_PASSWORD=root \
--name mysql5 \
-d \
--restart=always \
biarms/mysql:5.5.62-linux-arm32v7-beta-travis
1
2
3
4
5
6
MySQL5配置信息获取:
sudo docker cp mysql5:/var/lib/mysql /home/pi/Documents/mysql5/data
1
sudo docker cp mysql5:/etc/mysql /home/pi/Documents/mysql5/config
1
启动MySQL5容器:
sudo docker run -p 3506:3306 \
-v /mnt/depot/docker/mysql5/data:/var/lib/mysql \
-v /mnt/depot/docker/mysql5/config:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
--name mysql5 \
-d \
--restart=always \
biarms/mysql:5.5.62-linux-arm32v7-beta-travis
————————————————
版权声明:本文为CSDN博主「kida_yuan」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kida_yuan/article/details/113865348