之前是用的 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 安装后能正常访问吗