Sign inSign up

ryaning/leanote

By ryaning

Updated about 8 years ago

leanote 镜像

Image
0

186

ryaning/leanote repository overview


1、下载所需镜像

#下载leanote镜像
docker pull ryaning/leanote
#下载mongo镜像
docker pull mongo:4.0.0

2、初始化数据库

2.1、启动mongo数据库

命令说明:

  • –name:自定义别名
  • -v /home/leanote/mongo/db:/data/db:将主机中 /home/leanote/mongo/db 挂载到容器的 /data/db,作为mongo数据存储目录
docker run --name leanote-mongo \
-v /home/leanote/mongo/db:/data/db \
-d mongo:4.0.0

**注:**这里为了数据安全考虑,没有映射 mongo 端口,可通过(--link)方式指定容器来使用。

2.2、下载数据初始化文件

leanote 数据库初始化文件默认位于 leanote-linux-amd64-v2.x.x.bin.tar.gz/leanote/mongodb_backup/leanote_install_data 下,博主已经将该文件提取出来了,可以直接使用,不放心的话也可以从官方 github 上下载。

wget --no-check-certificate https://cdn.ryana.cn/leanote/leanote_install_data.tar.gz

将数据库初始化文件拷贝到 mongo 容器内。

docker cp leanote_install_data.tar.gz leanote-mongo:/home/
[root@server home]# docker ps
CONTAINER ID      IMAGE           COMMAND                  CREATED             STATUS              PORTS          NAMES
59cd627f4e96      mongo:4.0.0     "docker-entrypoint.s…"   14 seconds ago      Up 13 seconds       27017/tcp      leanote-mongo
[root@server home]# docker cp leanote_install_data.tar.gz leanote-mongo:/home/
[root@server home]#
2.3、进入容器初始化数据
docker exec -it leanote-mongo bash

进入容器后,我们先更改容器的时区,设置为东八区时间。

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
echo "Asia/Shanghai" > /etc/timezone

解压并导入数据库文件

tar -zxvf /home/leanote_install_data.tar.gz -C /home/
mongorestore -h localhost -d leanote --dir /home/leanote_install_data

导入完成后删除初始数据文件

rm -rf /home/leanote_install_data*
2.4、重启 mongo 容器

退出容器,重启mongo

docker restart leanote-mongo

3、启动leanote

命令说明:

  • –name:自定义别名
  • -p 9000:9000 :将容器的 9000 端口映射到主机的 9000 端口
  • -v /home/leanote/app.conf:/leanote/conf/app.conf:将主机中 /home/leanote/app.conf 挂载到容器的 /leanote/conf/app.conf,替换leanote配置
  • -v /home/leanote/data:/leanote/public/upload:将主机中 /home/leanote/data 挂载到容器的 /leanote/public/upload,作为 leanote 数据目录
  • --link leanote-mongo:mongohost:告诉当前容器需要使用 mongo (leanote-mongo)容器,并重命名为 mongohost
  • -d:以守护进程方式运行
docker run --name leanote \
-p 9000:9000 \
-v /home/leanote/app.conf:/leanote/conf/app.conf \
-v /home/leanote/data:/leanote/public/upload \
--link leanote-mongo:mongohost \
-d ryaning/leanote
  • app.conf

博主修改了 db.host=mongohost 和上方 --link leanote-mongo:mongohost 对应,当然为了安全考虑,还可以给 mongo 数据库添加访问账户密码

db.host=mongohost
db.port=27017
db.dbname=leanote # required
db.username= # if not exists, please leave blank
db.password= # if not exists, please leave blank

请务必修改 app.secret 一项, 在若干个随机位置处,将字符修改成一个其他的值, 否则会有安全隐患!

查看启动日志

docker logs leanote

Tag summary

Content type

Image

Digest

Size

22.9 MB

Last updated

about 8 years ago

docker pull ryaning/leanote