kopia lustrzana https://github.com/Stopka/fedisearch-compose
Porównaj commity
2 Commity
54b77227c3
...
f52d50ab61
Autor | SHA1 | Data |
---|---|---|
Štěpán Škorpil | f52d50ab61 | |
Štěpán Škorpil | a82f9025c8 |
|
@ -1,5 +1,3 @@
|
|||
FEDISEARCH_POSTGRES_PASSWORD=
|
||||
FEDISEARCH_POSTGRES_USER=
|
||||
FEDISEARCH_DOMAIN=
|
||||
FEDISEARCH_SEED='mastodon.social'
|
||||
FEDISEARCH_MATOMO_URL=
|
||||
|
@ -10,3 +8,5 @@ FEDISEARCH_REFRESH_HOURS='120'
|
|||
FEDISEARCH_WAIT_FOR_JOB_MINUTES='60'
|
||||
FEDISEARCH_DEFAULT_TIMEOUT_MILLISECONDS='10000'
|
||||
FEDISEARCH_STATS_CACHE_MINUTES='60'
|
||||
FEDISEARCH_ELASTIC_PASSWORD=
|
||||
FEDISEARCH_BANNED_DOMAINS=
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
This an example setup for Fediverse feed crawler and searcher.
|
||||
|
||||
Fedisearch consists of 3 app containers:
|
||||
1. **Postgres** - SQL database for storing all found feeds
|
||||
1. **Elasticsearch** - Key value storage database and fulltext search engine
|
||||
2. **Fedicrawl** - crawls through the Fediverse network and stores all found nodes and also its feeds to database
|
||||
3. **Fedisearch** - web frontend for searching data in database
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
version: "3.9"
|
||||
services:
|
||||
fedisearch-postgres:
|
||||
fedisearch-elasticsearch:
|
||||
environment:
|
||||
- xpack.security.enrollment.enabled=true
|
||||
ports:
|
||||
- 5432:5432
|
||||
volumes:
|
||||
- ./volumes/postgres-sql:/data
|
||||
- 9200:9200
|
||||
|
||||
fedisearch-crawler:
|
||||
image: skorpil/fedicrawl:dev
|
||||
|
@ -21,5 +21,13 @@ services:
|
|||
- 3000:3000
|
||||
volumes:
|
||||
- ./build/fedisearch/application:/srv
|
||||
volumes:
|
||||
fedisearch-postgres-data:
|
||||
# fedisearch-kibana:
|
||||
# image: kibana:8.4.1
|
||||
# environment:
|
||||
# ELASTICSEARCH_HOSTS: '["http://elastic:${FEDISEARCH_ELASTIC_PASSWORD}@fedisearch-elasticsearch:9200"]'
|
||||
# networks:
|
||||
# fedisearch:
|
||||
# aliases:
|
||||
# - kibana
|
||||
# ports:
|
||||
# - 5601:5601
|
||||
|
|
|
@ -13,18 +13,20 @@ services:
|
|||
context: ./build/fedicrawl
|
||||
target: prod
|
||||
environment:
|
||||
- 'POSTGRES_URL=postgresql://${FEDISEARCH_POSTGRES_USER}:${FEDISEARCH_POSTGRES_PASSWORD}@postgres:5432/${FEDISEARCH_POSTGRES_USER}?schema=public'
|
||||
- 'SEED_NODE_DOMAIN=${FEDISEARCH_SEED}'
|
||||
- 'TZ=${FEDISEARCH_TIMEZONE}'
|
||||
- 'REATTEMPT_MINUTES=${FEDISEARCH_REATTEMPT_MINUTES}'
|
||||
- 'REFRESH_HOURS=${FEDISEARCH_REFRESH_HOURS}'
|
||||
- 'WAIT_FOR_JOB_MINUTES=${FEDISEARCH_WAIT_FOR_JOB_MINUTES}'
|
||||
- 'DEFAULT_TIMEOUT_MILLISECONDS=${FEDISEARCH_DEFAULT_TIMEOUT_MILLISECONDS}'
|
||||
- 'ELASTIC_URL=http://elastic:9200'
|
||||
- 'ELASTIC_PASSWORD=${FEDISEARCH_ELASTIC_PASSWORD}'
|
||||
- 'BANNED_DOMAINS=${FEDISEARCH_BANNED_DOMAINS}'
|
||||
networks:
|
||||
fedisearch:
|
||||
logging: *default-logging
|
||||
depends_on:
|
||||
- fedisearch-postgres
|
||||
- fedisearch-elasticsearch
|
||||
|
||||
fedisearch-searcher:
|
||||
image: skorpil/fedisearch:latest
|
||||
|
@ -33,34 +35,32 @@ services:
|
|||
context: ./build/fedisearch
|
||||
target: prod
|
||||
environment:
|
||||
- 'POSTGRES_URL=postgresql://${FEDISEARCH_POSTGRES_USER}:${FEDISEARCH_POSTGRES_PASSWORD}@postgres:5432/${FEDISEARCH_POSTGRES_USER}?schema=public'
|
||||
- 'MATOMO_URL=${FEDISEARCH_MATOMO_URL}'
|
||||
- 'MATOMO_SITE_ID=${FEDISEARCH_MATOMO_SITE_ID}'
|
||||
- 'STATS_CACHE_MINUTES=${FEDISEARCH_STATS_CACHE_MINUTES}'
|
||||
- 'TZ=${FEDISEARCH_TIMEZONE}'
|
||||
- 'ELASTIC_URL=http://elastic:9200'
|
||||
- 'ELASTIC_PASSWORD=${FEDISEARCH_ELASTIC_PASSWORD}'
|
||||
networks:
|
||||
fedisearch:
|
||||
logging: *default-logging
|
||||
depends_on:
|
||||
- fedisearch-postgres
|
||||
|
||||
fedisearch-postgres:
|
||||
image: postgres:14
|
||||
restart: always
|
||||
volumes:
|
||||
- fedisearch-postgres-data:/var/lib/postgresql/data
|
||||
- fedisearch-elasticsearch
|
||||
fedisearch-elasticsearch:
|
||||
image: elasticsearch:8.4.1
|
||||
environment:
|
||||
- 'POSTGRES_PASSWORD=${FEDISEARCH_POSTGRES_PASSWORD}'
|
||||
- 'POSTGRES_USER=${FEDISEARCH_POSTGRES_USER}'
|
||||
- discovery.type=single-node
|
||||
- ELASTIC_PASSWORD=${FEDISEARCH_ELASTIC_PASSWORD}
|
||||
- 'TZ=${FEDISEARCH_TIMEZONE}'
|
||||
volumes:
|
||||
- fedisearch-elasticsearch-data:/usr/share/elasticsearch/data
|
||||
networks:
|
||||
fedisearch:
|
||||
aliases:
|
||||
- postgres
|
||||
logging: *default-logging
|
||||
- elastic
|
||||
|
||||
networks:
|
||||
fedisearch:
|
||||
|
||||
volumes:
|
||||
fedisearch-postgres-data:
|
||||
fedisearch-elasticsearch-data:
|
||||
|
|
Ładowanie…
Reference in New Issue