Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/asoul-sig/asoul-video
🎬 https://asoul.video/ 网站前后端源码
https://github.com/asoul-sig/asoul-video
a-soul go golang lsif-enabled postgresql
Last synced: about 20 hours ago
JSON representation
🎬 https://asoul.video/ 网站前后端源码
- Host: GitHub
- URL: https://github.com/asoul-sig/asoul-video
- Owner: asoul-sig
- License: mit
- Created: 2021-09-20T15:05:33.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2023-02-25T07:52:37.000Z (over 1 year ago)
- Last Synced: 2024-06-19T09:13:13.428Z (5 months ago)
- Topics: a-soul, go, golang, lsif-enabled, postgresql
- Language: Go
- Homepage: https://asoul.video
- Size: 1.83 MB
- Stars: 14
- Watchers: 0
- Forks: 4
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# 🎬 asoul-video ![Go](https://github.com/asoul-video/asoul-video/workflows/Go/badge.svg) [![Go Report Card](https://goreportcard.com/badge/github.com/asoul-video/asoul-video)](https://goreportcard.com/report/github.com/asoul-video/asoul-video) [![Sourcegraph](https://img.shields.io/badge/view%20on-Sourcegraph-brightgreen.svg?logo=sourcegraph)](https://sourcegraph.com/github.com/asoul-video/asoul-video)
![](https://screenshotapi-dot-net.storage.googleapis.com/asoul_video__077bf1d6aeee.png)
## 配置开发环境
### 前端
TBD
### 后端
A-SOUL Video 后端二进制文件需要在 Linux 系统上运行,但你可以在 macOS、Windows 等系统上进行开发。
#### 步骤 1: 安装依赖
A-SOUL Video 后端需要安装以下依赖:
- [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) (v1.8.3 或更高版本)
- [Go](https://golang.org/doc/install) (v1.16 或更高版本)
- [PostgreSQL](https://wiki.postgresql.org/wiki/Detailed_installation_guides) (v12 或更高版本)
- [Golang Migrate](https://github.com/golang-migrate/migrate/) (v4.7.0 或更高版本)##### macOS
1. 安装 [Homebrew](https://brew.sh/).
1. 安装依赖:```bash
brew install go postgresql git
```1. 配置 PostgreSQL 数据库自启动:
```bash
brew services start postgresql
```1. 确保在 `$PATH` 环境变量中设置了 PostgreSQL 客户端命令 `psql` 的路径。通过 Homebrew 的安装默认不会设置该环境变量。执行 `brew info postgresql`
命令,可以在 `Caveats` 段落中看到 Homebrew 提供的安装 `psql` 的方法。除此之外,也可以使用下方的命令进行安装,注意你可能需要根据本机 Homebrew 以及终端环境修改命令中的参数。```bash
hash psql || { echo 'export PATH="/usr/local/opt/postgresql/bin:$PATH"' >> ~/.bash_profile }
source ~/.bash_profile
```#### 步骤 2: 数据库初始化
你需要创建一个全新的 Postgres 数据库和一个对该数据库拥有完全操作权限的数据库用户。
1. 为当前 UNIX 用户创建数据库。
```bash
# 对于 Linux 用户,首先需要切换到 postgres 用户终端下
sudo su - postgres
``````bash
createdb
```2. 创建 A-SOUL Video 用户并设置密码。
```bash
createuser --superuser asoulvideo
psql -c "ALTER USER asoulvideo WITH PASSWORD 'asoulvideo';"
```3. 创建 A-SOUL Video 数据库。
```bash
createdb --owner=asoulvideo --encoding=UTF8 --template=template0 asoulvideo
```#### 步骤 3: 拉取代码
通常来说,你并不需要拉取所有的历史代码,因此可以设置 `--depth 1` 参数。
```bash
git clone --depth 1 https://github.com/asoul-video/asoul-video
```**注意** 本仓库开启 Go Module,请将仓库目录放置在你的 `$GOPATH` 目录之外。
#### 步骤 4: 配置数据库连接
A-SOUL Video 后端从以下环境变量中读取数据库连接参数。 [`PG*` 环境变量](http://www.postgresql.org/docs/current/static/libpq-envars.html).
将以下这些环境变量参数添加至 `~/.bashrc` 文件中:
```
export PGHOST=localhost
export PGUSER=asoulvideo
export PGPASSWORD=asoulvideo
export PGDATABASE=asoulvideo
export PGSSLMODE=disable
```你也可以使用类似 [`direnv`](https://direnv.net/) 这样的工具来管理你的环境变量。
#### 步骤 5: 启动 Web 服务器
启动 Web 服务器前,你需要确保以下环境变量中的参数数正确可用的,并将他们添加至你的 `~/.bashrc` 文件中:
```
# 爬虫上报数据时的鉴权参数
export SOURCE_REPORT_KEY=
``````bash
go build . && ./asoul-video
```## License
MIT