技术解析

求教怎么用 docker 安装 leanote
0
2021-06-29 10:31:13
idczone

之前是用的 zuolan 的方案,能安装成功,就是第一次安装要用两个脚本获取数据和导入有点麻烦,其实也不算太麻烦,只是想问下怎么能直接 docker compose up 就把服务启动起来,不用额外的脚本

leanote 官方 github 的 wiki 倒是也有用 docker 部署这个页面,不用额外的脚本: https://github.com/leanote/leanote/wiki/Run-leanote-by-docker

用 wiki 上的 docker-compose.yml 确实能访问,但是 SITE_URL= 只能指定为 "http://localhost:9000",然后就能通过 http://localhost:9000 进行访问,如果指定成自己的域名比如类似 http://note.mydomain.com 这样的,去访问会显示空白页面


再前置一个 Nginx proxypass 过去就好了

另外 SITE_URL 这个只是一个环境变量,绑定域名后也可以修改

```
version: '2'
services:
db:
restart: always
image: mongo:3.2.3
volumes:
- leanote_data:/data/db
server:
environment:
- SITE_URL="http://localhost:9000" 这里修改即可
depends_on:
- db
restart: always
build: .
ports:
- "localhost:9000:9000"
links:
- db:mongodb
volumes:
leanote_data:
```
PS:我那份 Dockerfile 是 Leanote 还没有 Docker 文档时写的,前面两步初始化数据库的确很尴尬。


我是按文档这个 docker compose 来的,也把 environment 里的 SITE_URL= 改成自己的域名了,然后用的 jwilder/nginx-proxy 当反向代理,但是访问域名过去就是空白页面

目前测试失败的 docker-compose.yml 文件:
```
version: '2'
services:
db:
restart: always
image: mongo:3.2.3
volumes:
- leanote_data:/data/db
server:
environment:
- SITE_URL="http://note.mydomain.com"
- VIRTUAL_HOST=note.mydomain.com
- VIRTUAL_PORT=9000
- VIRTUAL_NETWORK=proxy-network
depends_on:
- db
restart: always
build: .
expose:
- 9000
links:
- db:mongodb
volumes:
leanote_data:
networks:
default:
external:
name: proxy-network
```
docker-compose logs 能看到访问的信息,只不过页面上什么都不显示

expose:
- 9000:9000
这样?


expose 和 ports 不同,不需要指定宿主机上对应的端口的,只是标出容器要使用的端口
用 ports 也试过,也是不行
你用文档里的 docker compose 安装后能正常访问吗

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服