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"
|
||||
services:
|
||||
|
||||
invidious:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: docker/Dockerfile
|
||||
invidious-refresher:
|
||||
image: git.nadeko.net/invidious/invidious:latest
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "127.0.0.1:3000:3000"
|
||||
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
|
||||
- "127.0.0.1:5432:5432"
|
||||
volumes:
|
||||
- postgresdata:/var/lib/postgresql/data
|
||||
- ./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"]
|
||||
- ./config/config.conf:/etc/config/invidious-refresher.conf
|
||||
|
||||
volumes:
|
||||
postgresdata:
|
||||
invidious:
|
||||
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
|
||||
|
||||
|
|
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