Docker-Davinci-Resolve-Proj.../README_CN.md

166 lines
8.9 KiB
Markdown
Raw Normal View History

# DaVinci项目服务器
2024-10-14 05:46:10 +00:00
![Lint](https://github.com/elliotmatson/Docker-Davinci-Resolve-Project-Server/actions/workflows/lint.yml/badge.svg)
![Healthcheck](https://github.com/elliotmatson/Docker-Davinci-Resolve-Project-Server/actions/workflows/stack-healthcheck.yml/badge.svg)
![Docker Build](https://github.com/elliotmatson/Docker-Davinci-Resolve-Project-Server/actions/workflows/docker.yml/badge.svg)
2024-10-14 06:52:25 +00:00
**中文** | [English](https://github.com/fly6516/Docker-Davinci-Resolve-Project-Server/blob/main/README.md)
2024-10-14 06:04:48 +00:00
2024-10-14 05:46:10 +00:00
带有自动备份功能的DaVinci项目服务器
## 目录
- [DaVinci项目服务器](#DaVinci项目服务器)
- [目录](#目录)
- [项目介绍](#项目介绍)
- [项目功能](#项目功能)
- [项目设置](#项目设置)
- [数据库](#数据库)
- [数据库备份](#数据库备份)
- [PGAdmin-数据库图形化网页](#PGAdmin-数据库图形化网页)
- [磁盘位置](#磁盘位置)
- [安装](#安装)
- [QNAP 威联通安装](#QNAP-威联通安装)
- [Synology 群晖安装](#Synology-群晖安装)
- [Linux安装](#Linux安装)
- [使用不同的Postgres数据库版本](#使用不同的Postgres数据库版本)
- [设置一个PostgreSQL 9.5 或 11 版本的项目服务器](#设置一个PostgreSQL-95-或-11-版本的项目服务器)
2024-10-14 05:46:10 +00:00
- [鸣谢](#鸣谢)
## 项目介绍
2024-10-14 05:46:10 +00:00
有很多方法可以托管一个Resolve项目服务器但每种方法都有各自的问题。官方的项目服务器需要手动备份而其他选项对没有IT团队支持的人来说可能会很复杂。希望这能成为小团队更可靠、更简单的解决方案
2024-10-14 05:46:10 +00:00
### 项目功能
- **轻量级** - 基于Docker因此不需要完整的macOS或Windows机器或虚拟机。
- **跨平台** - 可安装在Windows、Mac、Linux、威联通、群晖、树莓派几乎任何能够运行Docker的设备上。
- **兼容 Resolve 的现有备份/还原功能** - 所有备份文件使用标准的Resolve *.backup文件格式并且可以从Resolve的用户界面进行还原。
- **内置 PGAdmin 服务器** - PGAdmin是用于管理PostgreSQL服务器的工具对于诊断问题以及迁移/更新整个服务器非常有帮助。
2024-10-14 05:46:10 +00:00
## 项目设置
请从源文件下载docker-compose.yml并按以下步骤配置
我们需要在 docker-compose.yml 文件的顶部进行一些编辑,以配置我们的安装:
2024-10-14 05:46:10 +00:00
```yaml
---
version: '3.8'
x-common:
database: &db-environment
POSTGRES_DB: database
POSTGRES_USER: &pg-user postgres
POSTGRES_PASSWORD: DaVinci
TZ: America/Chicago
POSTGRES_LOCATION: &db-location "???:/var/lib/postgresql/data"
backup: &backup-environment
SCHEDULE: "@daily"
BACKUP_KEEP_DAYS: 7
BACKUP_KEEP_WEEKS: 4
BACKUP_KEEP_MONTHS: 6
BACKUP_LOCATION: &bk-location "???:/backups"
admin: &admin-environment
PGADMIN_DEFAULT_EMAIL: admin@admin.com
PGADMIN_DEFAULT_PASSWORD: root
PGADMIN_PORT: &pgadmin-port "3001:80"
...
```
### 数据库
要配置服务器本身,我们需要配置以下环境变量:
| 环境变量 | 含义 |
2024-10-14 05:46:10 +00:00
|---|---|
| POSTGRES_DB | 数据库名称。可以随意命名(需要在连接时填写)。 |
| POSTGRES_USER | 用于连接数据库的用户名。Resolve默认是"postgres"。 |
| POSTGRES_PASSWORD | 用于连接数据库的密码。Resolve默认是"DaVinci"。 |
| TZ | 您的时区,这里有[一个列表](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)。 |
| POSTGRES_LOCATION | 数据库存储的位置。请参见[卷位置](#volume-locations)。 |
2024-10-14 05:46:10 +00:00
### 数据库备份
要配置备份,我们需要设置以下变量:
| 环境变量 | 含义 |
2024-10-14 05:46:10 +00:00
|---|---|
| SCHEDULE | 一个[cron字符串](https://www.freeformatter.com/cron-expression-generator-quartz.html),用于指定备份的创建频率。可以是"@daily"、"@every 1h"等。 |
| BACKUP_KEEP_DAYS | 保留的每日备份数量,超过此数量后将删除旧备份。 |
| BACKUP_KEEP_WEEKS | 保留的每周备份数量,超过此数量后将删除旧备份。 |
| BACKUP_KEEP_MONTHS | 保留的每月备份数量,超过此数量后将删除旧备份。 |
| BACKUP_LOCATION | 备份文件存储的位置。请参见[卷位置](#volume-locations)。 |
2024-10-14 05:46:10 +00:00
### PGAdmin-数据库图形化网页
要配置PGAdmin我们需要设置以下变量
| 环境变量 | 含义 |
2024-10-14 05:46:10 +00:00
|---|---|
| PGADMIN_DEFAULT_EMAIL | 用于PGAdmin登录的邮箱。默认是"admin@admin.com"。 |
| PGADMIN_DEFAULT_PASSWORD | 用于PGAdmin登录的密码。默认是"root"。 |
| PGADMIN_PORT | 配置PGAdmin的端口语法为"对外端口:80"。 |
2024-10-14 05:46:10 +00:00
### 磁盘位置
数据库和备份的位置取决于你安装的平台。你需要知道存储它们的文件夹的完整路径。例如,在 威联通 NAS 上,如果我想将备份存储在名为"Videos"的共享文件夹中的"Backups"文件夹中,路径将是```/shares/Videos/Backups/```,那么我的```BACKUP_LOCATION```值将如下所示:
2024-10-14 05:46:10 +00:00
```yaml
BACKUP_LOCATION: &bk-location "/shares/Videos/Backups/:/backups"
```
在Ubuntu上如果我想将数据库存储在名为“database”的文件夹中该文件夹位于名为“johndoe”的用户的主目录中路径将是```/home/johndoe/database/```,那么我的```POSTGRES_LOCATION```值将如下所示:
2024-10-14 05:46:10 +00:00
```yaml
POSTGRES_LOCATION: &db-location "johndoe/database/:/var/lib/postgresql/data"
```
我建议将数据库存放在SSD上使用机械硬盘时访问速度会明显变慢。
2024-10-14 05:46:10 +00:00
一旦配置好这些设置,保存修改后的`docker-compose.yml`文件,然后继续进行安装!
2024-10-14 05:46:10 +00:00
## 安装
2024-10-14 05:46:10 +00:00
### QNAP 威联通安装
在 威联通 NAS 上安装相对简单。请注意务必将数据库文件放在SSD上你会感谢我的。
2024-10-14 05:46:10 +00:00
1. 如果还没有按照docker请从威联通应用商店安装Container Station。
2. 在Container Station中点击“创建”然后点击“创建应用程序”。
3. 给你的应用程序命名随便取个名字例如ResolveServer
4. 复制/粘贴你修改后的`docker-compose.yml`文件点击“验证YAML”进行测试如果通过验证点击“创建”。
5. Container Station会下载所需的文件并启动应用程序。完成后你应该能够使用数据库名称和凭据将Resolve连接到 威联通 的IP地址。
2024-10-14 05:46:10 +00:00
### Synology 群晖安装
请见 [该讨论](https://github.com/elliotmatson/Docker-Davinci-Resolve-Project-Server/discussions/15#discussioncomment-4615278)
fly6516测试中待补充。
2024-10-14 05:46:10 +00:00
### Linux安装
1. 按照你Linux发行版的[Docker安装说明](https://docs.docker.com/engine/install/)进行安装。
2. 安装[Docker Compose](https://docs.docker.com/compose/install/)。
3. 将你修改后的`docker-compose.yml`文件移动到Linux机器上的一个文件夹中然后在终端中导航到该文件夹。
4. 运行:
```bash
docker-compose up -d
```
5. Docker Compose将下载所需的文件并启动应用程序。完成后你应该能够使用数据库名称和凭据将Resolve连接到你的Linux服务器实例的IP地址。
2024-10-14 05:46:10 +00:00
## 使用不同的Postgres数据库版本
通常情况下Resolve对不匹配的PostgreSQL版本的容忍度较低。Resolve 18使用PostgreSQL 13而这个仓库现在默认使用这个版本。Resolve 17及以下版本使用PostgreSQL 9.5。不幸的是主要版本9.5已达到生命周期结束EOL特别是9.5.4版本存在许多漏洞,使其不安全。
由于大多数人仍然使用默认的Resolve凭据来访问他们的服务器因此安全性通常不是最主要的担忧。但如果你尝试用旧版Resolve保护项目服务器建议升级到受支持的PostgreSQL版本。
2024-10-14 05:46:10 +00:00
Resolve 17及以下版本仍然使用已在PostgreSQL 12中移除的遗留功能因此可以使用的最新主要版本是11该版本将维持支持直到2023年11月9日。
2024-10-14 05:46:10 +00:00
### 设置一个PostgreSQL 9.5 或 11 版本的项目服务器
要设置PostgreSQL 9.5或11 服务器而不是13有两行需要在docker_compose.yml中更改
2024-10-14 05:46:10 +00:00
```yaml
services:
postgres:
image: postgres:13
...
pgbackups:
image: prodrigestivill/postgres-backup-local:13
...
...
```
更改为以下内容:
2024-10-14 05:46:10 +00:00
```yaml
services:
postgres:
image: postgres:9.5
...
pgbackups:
image: prodrigestivill/postgres-backup-local:9.5
...
...
```
## 鸣谢
-[prodrigestivill](https://github.com/prodrigestivill/) 及其 [PostgreSQL Backup docker image](https://github.com/prodrigestivill/docker-postgres-backup-local)的贡献