Skip to content

Commit

Permalink
Enhance the production compose file (#200)
Browse files Browse the repository at this point in the history
* Enhance the production compose file

* Minor changes

* Better configs

* Fix YAML syntax

* Move to an Alpine-based Postgres image

* Re-order the configs in the order of the config file + add statistics_enabled

* Enforce a container_name and rename the postgres container

* Remove the enforced container_name following suggestions

* Enforce the source of the image (mostly for Podman compatibility)

* Add a comment containing the ARM64 image

* Move back to a Debian-based Postgres image
  • Loading branch information
TheFrenchGhosty authored Feb 23, 2022
1 parent 17ef280 commit 687ae29
Showing 1 changed file with 25 additions and 40 deletions.
65 changes: 25 additions & 40 deletions Installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,70 +43,55 @@ cd invidious
Edit the docker-compose.yml with this content:

```docker
version: "2.4"
version: "3"
services:
postgres:
image: postgres:10
restart: always
networks:
- invidious
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"]
invidious:
image: quay.io/invidious/invidious:latest
restart: always
networks:
- invidious
mem_limit: 1024M
cpus: 0.5
# image: quay.io/invidious/invidious:latest-arm64 # ARM64/AArch64 devices
restart: unless-stopped
ports:
- "127.0.0.1:3000:3000"
environment:
INVIDIOUS_CONFIG: |
# 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
channel_threads: 1
check_tables: true
feed_threads: 1
INVIDIOUS_CONFIG: |
db:
dbname: invidious
user: kemal
password: kemal
host: postgres
host: invidious-db
port: 5432
full_refresh: false
https_only: false
domain:
# external_port:
check_tables: true
# external_port:
# domain:
# https_only: false
# statistics_enabled: false
healthcheck:
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1
interval: 30s
timeout: 5s
retries: 2
depends_on:
- postgres
autoheal:
restart: always
image: willfarrell/autoheal
environment:
- AUTOHEAL_CONTAINER_LABEL=all
- invidious-db
invidious-db:
image: docker.io/library/postgres:14
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- 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"]
volumes:
postgresdata:
networks:
invidious:
```

Note: This compose is made for a true "production" setup, where Invidious is behind a reverse proxy. If you prefer to directly access Invidious, replace `127.0.0.1:3000:3000` with `3000:3000` under the `ports:` section.
Expand Down

0 comments on commit 687ae29

Please sign in to comment.