Lightweight task tracker logging executions via simple HTTP GET requests.
87
This project is a lightweight task tracker and action logging service that allows users to log specific task executions via a simple HTTP GET request.
It is designed for easy integration with cron jobs, scripts, and other automated systems.
For example, calling:
GET /logs/:taskKey/:taskSecret
will log the execution with timestamp and request metadata (e.g. IP address).
v1.0.0 – Initial releaseThis image is intended to be used with Docker Compose. Below are example docker-compose configurations for both the core application and an optional logging stack (ELK).
Minimal setup with PostgreSQL: docker-compose.core.yml
services:
pgdb:
image: postgres:latest
container_name: pgdb
restart: always
environment:
POSTGRES_DB: tasktrackerapp
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
ports:
- "5433:5432"
volumes:
- task-tracker-pgdata:/var/lib/postgresql/data
networks:
- task-tracker-appnet
app:
image: mhmet/task-tracker:v1.0.0
container_name: app
depends_on:
- pgdb
ports:
- "3000:3000"
networks:
- task-tracker-appnet
volumes:
- ../logs:/logs
volumes:
task-tracker-pgdata:
networks:
task-tracker-appnet:
name: task-tracker-appnet
Enable logging to Elasticsearch and visualize logs with Kibana: docker-compose.logging.yml
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.17
container_name: elasticsearch
environment:
- discovery.type=single-node
- bootstrap.memory_lock=true
- ES_JAVA_OPTS=-Xms1g -Xmx1g
ulimits:
memlock:
soft: -1
hard: -1
ports:
- "9200:9200"
volumes:
- esdata:/usr/share/elasticsearch/data
networks:
- task-tracker-appnet
kibana:
image: docker.elastic.co/kibana/kibana:7.17.17
container_name: kibana
ports:
- "5601:5601"
depends_on:
- elasticsearch
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
networks:
- task-tracker-appnet
filebeat:
image: docker.elastic.co/beats/filebeat:7.17.17
container_name: filebeat
user: root
depends_on:
- elasticsearch
- app
networks:
- task-tracker-appnet
command: >
sh -c "cp /config/filebeat.yml /usr/share/filebeat/filebeat.yml &&
chmod go-w /usr/share/filebeat/filebeat.yml &&
filebeat -e"
volumes:
- ./filebeat.yml:/config/filebeat.yml:ro
- ../logs:/app/logs:ro
volumes:
esdata:
# networks:
# task-tracker-appnet:
# external: true
Filebeat configuration can be found here
For a detailed explanation of the Docker-based architecture and service layout, refer to the Docker-Based Unified Deployment Architecture section in the GitHub README.
Content type
Image
Digest
sha256:7532fd1f7…
Size
18 MB
Last updated
over 1 year ago
docker pull mhmet/task-tracker:v1.0.0