使用 Docker 进行文件运行安装
本指南假定您已安装并安装在具有至少 1GB RAM 内存的服务器上。Docker
docker-compose
创建名为文本的文件,并将其粘贴到以下内容中:docker-compose.yml
version: '2'
services:
db:
image: mariadb:10.1
environment:
MYSQL_ROOT_PASSWORD: your_mysql_root_password
MYSQL_USER: your_filerun_username
MYSQL_PASSWORD: your_filerun_password
MYSQL_DATABASE: your_filerun_database
volumes:
- /filerun/db:/var/lib/mysql
web:
image: afian/filerun
environment:
FR_DB_HOST: db
FR_DB_PORT: 3306
FR_DB_NAME: your_filerun_database
FR_DB_USER: your_filerun_username
FR_DB_PASS: your_filerun_password
APACHE_RUN_USER: www-data
APACHE_RUN_USER_ID: 33
APACHE_RUN_GROUP: www-data
APACHE_RUN_GROUP_ID: 33
depends_on:
- db
links:
- db:db
ports:
- "80:80"
volumes:
- /filerun/html:/var/www/html
- /filerun/user-files:/user-files
请注意上述配置。您需要配置两个文件夹。一个用于 FileRun 应用程序文件。它可以位于任何空文件夹中,并且必须将装载路径设置为 和 一个用于 FileRun 用户文件,并且装载路径设置为 。换句话说,如果使用上述配置文本,您只需要创建两个空文件夹,并且可以启动 FileRun Docker 容器:volumes
/var/www/html
/user-files
/filerun/html
/filerun/user-files
其中/filerun
是你的本地映射路径,/var/www/html
是docker容器里的路径
mkdir /filerun /filerun/html /filerun/user-files
然后使用以下命令启动 FileRun:
docker-compose up -d
FileRun 现在应该已启动并运行,您可以使用浏览器访问它。
默认 FileRun 凭据如下所示:
* 用户名:superuser
* 密码:superuser
然后设置nginx
反向代理,使用ssl访问
/etc/nginx/conf.d/
下生成你的xxx.conf
文件。当然,你得先用Certbot
生成证书。内容如下:
server {
server_name xxx.xxx;#你的域名
location / {
proxy_pass http://127.0.0.1:10080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-for $remote_addr;
proxy_set_header X-Forwarded-Proto https;
port_in_redirect off;
proxy_connect_timeout 300;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/xxx.xxx/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/xxx.xxx/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = xxx.xxx) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
listen [::]:80;
server_name xxx.xxx;
return 404; # managed by Certbot
}
如果你使用了ssl,那么根据官方以及大多数博客的内容,你会在登录的时候出错。一直登录不上去。
强制使用https协议
如果您的nginx服务,并没有直接面向最终用户,而是在某些负载均衡/cdn后面,并且您的ssl证书是在这些负载均衡/cdn上面配置的,那么有可能会导致nginx无法正确获取客户端所使用的协议,从而导致无法将客户端使用的协议传递给为知笔记服务。在这种情况下,您可以修改nginx配置,强制通知服务使用https协议。