Automated invidious docker builds
Some checks are pending
Invidious CI / build (push) Waiting to run
Some checks are pending
Invidious CI / build (push) Waiting to run
This commit is contained in:
parent
de3a444939
commit
f9f252c75b
4 changed files with 80 additions and 43 deletions
38
.forgejo/workflows/ci.yml
Normal file
38
.forgejo/workflows/ci.yml
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
name: 'Invidious CI'
|
||||||
|
|
||||||
|
on:
|
||||||
|
# workflow_dispatch:
|
||||||
|
# inputs: {}
|
||||||
|
schedule:
|
||||||
|
- cron: '0 7 * * 0'
|
||||||
|
push:
|
||||||
|
branches: ["*"]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: runner
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: https://code.forgejo.org/actions/checkout@v2
|
||||||
|
|
||||||
|
- uses: https://code.forgejo.org/docker/setup-buildx-action@v3
|
||||||
|
name: Setup Docker BuildX system
|
||||||
|
|
||||||
|
- name: Login to Docker Container Registry
|
||||||
|
uses: https://code.forgejo.org/docker/login-action@v3.1.0
|
||||||
|
with:
|
||||||
|
registry: git.nadeko.net
|
||||||
|
username: ${{ secrets.USERNAME }}
|
||||||
|
password: ${{ secrets.TOKEN }}
|
||||||
|
|
||||||
|
- uses: https://code.forgejo.org/docker/build-push-action@v5
|
||||||
|
name: Build images
|
||||||
|
with:
|
||||||
|
context: .
|
||||||
|
file: docker/Dockerfile
|
||||||
|
tags: git.nadeko.net/fijxu/invidious:latest
|
||||||
|
platforms: linux/amd64
|
||||||
|
push: true
|
||||||
|
build-args: |
|
||||||
|
"release=1"
|
||||||
|
|
|
@ -7,49 +7,30 @@
|
||||||
version: "3"
|
version: "3"
|
||||||
services:
|
services:
|
||||||
|
|
||||||
invidious:
|
invidious-refresher:
|
||||||
build:
|
image: git.nadeko.net/invidious/invidious:latest
|
||||||
context: .
|
|
||||||
dockerfile: docker/Dockerfile
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
ports:
|
||||||
- "127.0.0.1:3000:3000"
|
- "127.0.0.1:5432:5432"
|
||||||
environment:
|
|
||||||
# Please read the following file for a comprehensive list of all available
|
|
||||||
# configuration options and their associated syntax:
|
|
||||||
# https://github.com/iv-org/invidious/blob/master/config/config.example.yml
|
|
||||||
INVIDIOUS_CONFIG: |
|
|
||||||
db:
|
|
||||||
dbname: invidious
|
|
||||||
user: kemal
|
|
||||||
password: kemal
|
|
||||||
host: invidious-db
|
|
||||||
port: 5432
|
|
||||||
check_tables: true
|
|
||||||
# external_port:
|
|
||||||
# domain:
|
|
||||||
# https_only: false
|
|
||||||
# statistics_enabled: false
|
|
||||||
hmac_key: "CHANGE_ME!!"
|
|
||||||
healthcheck:
|
|
||||||
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/trending || exit 1
|
|
||||||
interval: 30s
|
|
||||||
timeout: 5s
|
|
||||||
retries: 2
|
|
||||||
|
|
||||||
invidious-db:
|
|
||||||
image: docker.io/library/postgres:14
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
volumes:
|
||||||
- postgresdata:/var/lib/postgresql/data
|
- ./config/config.conf:/etc/config/invidious-refresher.conf
|
||||||
- ./config/sql:/config/sql
|
|
||||||
- ./docker/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh
|
|
||||||
environment:
|
|
||||||
POSTGRES_DB: invidious
|
|
||||||
POSTGRES_USER: kemal
|
|
||||||
POSTGRES_PASSWORD: kemal
|
|
||||||
healthcheck:
|
|
||||||
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
|
|
||||||
|
|
||||||
volumes:
|
invidious:
|
||||||
postgresdata:
|
image: git.nadeko.net/invidious/invidious:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:5432:5432"
|
||||||
|
deploy:
|
||||||
|
replicas: 4
|
||||||
|
volumes:
|
||||||
|
- ./config/config.conf:/etc/config/config.conf
|
||||||
|
|
||||||
|
invidious-nginx:
|
||||||
|
image: nginx:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- ./nginx.conf:/etc/nginx/nginx.conf:ro
|
||||||
|
depends_on:
|
||||||
|
- invidious
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:50011:3000"
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
FROM crystallang/crystal:1.8.2-alpine AS builder
|
FROM crystallang/crystal:1.11.2-alpine AS builder
|
||||||
|
|
||||||
RUN apk add --no-cache sqlite-static yaml-static
|
RUN apk add --no-cache sqlite-static yaml-static
|
||||||
|
|
||||||
|
|
18
nginx.conf
Normal file
18
nginx.conf
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
user www-data;
|
||||||
|
events {
|
||||||
|
worker_connections 1000;
|
||||||
|
}
|
||||||
|
http {
|
||||||
|
server {
|
||||||
|
listen 3000;
|
||||||
|
listen [::]:3000;
|
||||||
|
access_log off;
|
||||||
|
location / {
|
||||||
|
resolver 127.0.0.11;
|
||||||
|
set $backend "invidious";
|
||||||
|
proxy_pass http://$backend:3000;
|
||||||
|
proxy_http_version 1.1; # to keep alive
|
||||||
|
proxy_set_header Connection ""; # to keep alive
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue