1
0

Add loki container
All checks were successful
Deploy / Deploy (push) Successful in 13s

This commit is contained in:
2025-12-09 19:00:41 +00:00
parent 8d7ddea83f
commit aed65f008f
3 changed files with 120 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
name: Deploy
on:
push:
branches:
- main
jobs:
deploy:
name: Deploy
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup ssh-agent
uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
- name: Deploy to remote
env:
REMOTE_USER: ${{ secrets.REMOTE_USER }}
REMOTE_HOST: ${{ secrets.REMOTE_HOST }}
REMOTE_PATH: ${{ secrets.REMOTE_PATH }}
run: |
ssh -o StrictHostKeyChecking=no "$REMOTE_USER"@"$REMOTE_HOST" "mkdir -p \"$REMOTE_PATH\""
scp -r ./* "$REMOTE_USER"@"$REMOTE_HOST":"$REMOTE_PATH"
ssh "$REMOTE_USER"@"$REMOTE_HOST" "docker compose -f $REMOTE_PATH/compose.yml down"
ssh "$REMOTE_USER"@"$REMOTE_HOST" "docker compose -f $REMOTE_PATH/compose.yml pull"
ssh "$REMOTE_USER"@"$REMOTE_HOST" "docker compose -f $REMOTE_PATH/compose.yml up -d --force-recreate"

57
compose.yml Normal file
View File

@@ -0,0 +1,57 @@
networks:
monitoring_network:
name: monitoring_network
services:
loki:
container_name: loki
image: grafana/loki:3.6.2
restart: unless-stopped
user: 2003:2003 # loki:loki
networks:
- monitoring_network
ports:
- "3100:3100"
volumes:
- ./loki/config.yml:/etc/loki/config.yml:ro
- ./loki/data:/loki:rw
command: -config.file=/etc/loki/config.yml
#promtail:
# image: grafana/promtail:latest
# volumes:
# - /var/log:/var/log
# command: -config.file=/etc/promtail/config.yml
# networks:
# - loki
#grafana:
# environment:
# - GF_PATHS_PROVISIONING=/etc/grafana/provisioning
# - GF_AUTH_ANONYMOUS_ENABLED=true
# - GF_AUTH_ANONYMOUS_ORG_ROLE=Admin
# - GF_FEATURE_TOGGLES_ENABLE=alertingSimplifiedRouting,alertingQueryAndExpressionsStepMode
# entrypoint:
# - sh
# - -euc
# - |
# mkdir -p /etc/grafana/provisioning/datasources
# cat <<EOF > /etc/grafana/provisioning/datasources/ds.yaml
# apiVersion: 1
# datasources:
# - name: Loki
# type: loki
# access: proxy
# orgId: 1
# url: http://loki:3100
# basicAuth: false
# isDefault: true
# version: 1
# editable: false
# EOF
# /run.sh
# image: grafana/grafana:latest
# ports:
# - "3000:3000"
# networks:
# - loki

30
loki/config.yml Normal file
View File

@@ -0,0 +1,30 @@
# This is a complete configuration to deploy Loki backed by the filesystem.
# The index will be shipped to the storage via tsdb-shipper.
auth_enabled: false
server:
http_listen_port: 3100
common:
instance_addr: 127.0.0.1
path_prefix: /loki
storage:
filesystem:
chunks_directory: /loki/chunks
rules_directory: /loki/rules
replication_factor: 1
ring:
kvstore:
store: inmemory
schema_config:
configs:
- from: 2020-05-15
store: tsdb
object_store: filesystem
schema: v13
index:
prefix: index_
period: 24h