docker-compose 模板
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 lines
3.0 KiB

3 years ago
# Cloudreve Docker - Docker Compose
## 使用Nginx作为服务器
在开始之前,请检查:
- 已安装docker,如果没有请执行`wget -qO- https://get.docker.com/ | bash`安装docker。
- 已安装docker compose,如果没有请参考[Install Docker Compose](https://docs.docker.com/compose/install/)。
- 一个域名并解析到运行Cloudreve的服务器,这里以`cloudreve.example.com`为例。
- 确保80和443端口没有被占用,如果您已经有服务器软件(如Nginx或Caddy),请考虑为原有服务器软件增加配置文件并删除docker compose配置文件中的caddy容器。
该docker-compose文件仅适用于linux/amd64架构,如果您正在使用arm请尝试修改部分参数。
### 预创建文件
Nginx配置文件
```bash
mkdir -p /dockercnf/nginx/conf.d \
&& mkdir -p /dockercnf/nginx/ssl \
&& vim /dockercnf/nginx/conf.d/cloudreve.conf
```
填入以下信息
```
server {
listen 80;
location / {
proxy_pass http://cloudreve:5212;
proxy_set_header Host $host;
}
}
```
### 下载环境文件以及Docker Compose文件
下载环境文件
```bash
wget -qO- https://raw.githubusercontent.com/xavier-niu/cloudreve-docker/master/docker-compose-env-example > .env
```
根据需要对环境变量进行修改
- 必填项
- CLOUDREVE_PUID: PUID的获取方式详见`获取PUID和PGID`
- CLOUDREVE_PGID: PGID的获取方式详见`获取PUID和PGID`
- ARIA2_RPC_SECRET: Aria2 RPC密码(你可以去[这里](https://miniwebtool.com/zh-cn/random-string-generator/)生成随机字符串)。请记下该密码!在后续Cloudreve设置Aria2中会使用。
- 选填项(如无特殊需要不建议修改)
- TEMP_FOLDER_PATH: 离线下载临时文件夹路径
- ARIA2_CONFIG_PATH: Aria2的配置文件夹路径
- CLOUDREVE_UPLOAD_PATH: Cloudreve上传文件夹路径
- CLOUDREVE_CONF_PATH: Cloudreve配置文件夹路径
- CLOUDREVE_DB_PATH: Cloudreve数据库文件夹路径
下载Docker Compose文件
```bash
wget -qO- https://raw.githubusercontent.com/xavier-niu/cloudreve-docker/master/docker-compose-amd64.yml > docker-compose.yml
```
### 启动Docker Compose
```bash
docker-compose up -d
```
说明
- Aria2-RPC会暴露于外网,访问端口`6800`,Secret为你对`ARIA2_RPC_SECRET`设置的随机字符串。
### 配置Cloudreve连接Aria2服务器
- 以管理员身份登陆
- 点击"头像(右上角) > 管理面板"
- 点击"参数设置 > 离线下载"
- RPC服务器地址: `http://aria2:6800/`
- RPC Secret: 你对`ARIA2_RPC_SECRET`设置的随机字符串
- 临时下载地址: `/downloads`
- 其他选项按照默认值即可
- 测试连接并保存
### 使用Traefik作为服务器
本方案由@expoli提供。Traefik是新一代的Web服务器,支持docker服务发现和自动申请HTTPS证书,只需修改相应的服务的label即可实现服务的反向代理,简化了配置。
相关配置请参阅[https://github.com/expoli/docker-compose-files](https://github.com/expoli/docker-compose-files),Cloudreve使用**traefik + cloudreve + mysql + redis**实现。