Skip to content
Merged

Cicd #22

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 0 additions & 38 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

28 changes: 0 additions & 28 deletions .github/ISSUE_TEMPLATE/feature_request.md

This file was deleted.

1 change: 0 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,6 @@ jobs:
run: |
uv sync --all-extras --dev
uv pip install -r tests/requirements-test.txt
uv add ruff

- name: Create test environment file
run: |
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/code-quality.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.12"
python-version: "3.13"

- name: Install uv
uses: astral-sh/setup-uv@v3
Expand Down Expand Up @@ -64,7 +64,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.12"
python-version: "3.13"

- name: Install tools
run: |
Expand All @@ -80,4 +80,4 @@ jobs:

- name: Check for complex functions
run: |
xenon --max-absolute B --max-modules A --max-average A app/
xenon --max-absolute B --max-modules A --max-average A app/
1 change: 1 addition & 0 deletions command
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
uvicorn app.main:app --host 0.0.0.0 --port 8080
docker compose up -d --build
docker compose -f docker-compose-prod.yml up -d --build

docker compose down
docker compose down -v
Expand Down
93 changes: 93 additions & 0 deletions docker-compose-prod.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
services:
app:
restart: always
image: ghcr.io/gooodh/fastapi_sqlalchemy_temp:latest
container_name: "app"
command: bash entrypoint.sh
ports:
- "8080:8080"
depends_on:
- db_postgres

watchtower:
image: containrrr/watchtower
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
command:
- --cleanup=true # Очистка старых неиспользуемых образов после обновления
- --interval=300 # Проверять обновления каждые 300 секунд (5 минут)


db_postgres:
image: postgres:15
container_name: app_postgres_container
restart: always
env_file:
- .env
volumes:
- app_postgres:/var/lib/postgresql/data
ports:
- 5432:5432

pgadmin:
image: dpage/pgadmin4
container_name: app_pgadmin_container
environment:
PGADMIN_DEFAULT_EMAIL: admin@pgadmin.com
PGADMIN_DEFAULT_PASSWORD: password
PGADMIN_LISTEN_PORT: 80
ports:
- 15432:80
volumes:
- app_pgadmin:/var/lib/pgadmin
depends_on:
- db_postgres

loki:
image: grafana/loki:latest
container_name: "grafana_loki"
ports:
- "3100:3100"
volumes:
- ./loki-config.yml:/etc/loki/local-config.yml:ro

grafana:
image: grafana/grafana:latest
container_name: "grafana"
ports:
- "3000:3000"
volumes:
- grafana_data:/var/lib/grafana

promtail:
image: grafana/promtail:2.9.0
container_name: promtail
volumes:
- /var/lib/docker/containers:/var/lib/docker/containers:ro
- /var/run/docker.sock:/var/run/docker.sock
- ./promtail-config.yaml:/etc/promtail/config.yml
command: -config.file=/etc/promtail/config.yml
privileged: true
depends_on:
- loki

prometheus:
image: prom/prometheus:v2.52.0
container_name: prometheus
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- ./prometheus-data:/prometheus
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
- '--web.enable-lifecycle'
depends_on:
- loki

volumes:
app_postgres:
app_pgadmin:
grafana_data:
Loading