Depo, uygulama katmanının bir konteyner imajını ve onu PostgreSQL 16'nın yanında çalıştıran bir Compose dosyasını içerir. İkisi de performans bütçelerini gerçek Linux süreç modeli üzerinde ölçmek için vardır; bir düğüm konteynerlerle değil deploy/install.sh ile kurulur (deploy/docker/compose.measure.yml:1-5). Bu sayfa deploy/docker/Dockerfile ve deploy/docker/compose.measure.yml dosyalarını açıklar.
Kapsam ve kaynak¶
- Tanımlandığı yer:
deploy/docker/Dockerfile(tek derleme hedefi,runtime) vedeploy/docker/compose.measure.yml(iki servis,dbveapp). - Sayı: Compose dosyasından sayılan iki servis ve bir adlandırılmış birim.
İmaj¶
| Parça | Davranış | Kaynak |
|---|---|---|
| Temel | python:3.12-slim-bookworm, runtime derleme hedefi. |
deploy/docker/Dockerfile:10 |
| Ortam | Tamponsuz çıktı, bayt kodu dosyası yok, pip önbelleği yok, pip sürüm denetimi yok. | deploy/docker/Dockerfile:12-15 |
| Sistem paketleri | Yedek çalıştırıcısı için PostgreSQL istemci araçları, libpq5 ve curl. |
deploy/docker/Dockerfile:17-21 |
| Kullanıcı | Sabit sayısal kimlikli bir sistem kullanıcısı uygulama klasörünün sahibidir; konteyner o kullanıcıyla koşar. | deploy/docker/Dockerfile:23-24, deploy/docker/Dockerfile:41 |
| Bağımlılıklar | Katman önbelleği için kaynaktan önce --require-hashes ile requirements.lock. |
deploy/docker/Dockerfile:26-28 |
| İçerik | pyproject.toml, README.md, src, migrations, alembic.ini, webapp, gunicorn yapılandırması ve scripts/backup. |
deploy/docker/Dockerfile:30-36 |
| Kurulum | Bağımlılık çözümü olmadan proje, artı kullanıcıya ait durum ve yedek klasörleri. | deploy/docker/Dockerfile:37-39 |
| Sağlık denetimi | 15 saniyede bir /ready adresine curl. |
deploy/docker/Dockerfile:43-44 |
| Komut | deploy/gunicorn.conf.py ve cluster_erp.server.asgi:app ile gunicorn. |
deploy/docker/Dockerfile:46 |
İmajda derleyici, Qt araç takımı ve veritabanı yoktur (deploy/docker/Dockerfile:1-7).
Ölçüm yığını¶
| Servis | Davranış | Kaynak |
|---|---|---|
db |
Sabit max_connections ve shared_buffers değerli, sağlık denetimli, adlandırılmış veri birimli ve bağlantı noktası yalnız geri döngü arabiriminde yayımlanan postgres:16. |
deploy/docker/compose.measure.yml:16-31 |
app |
Dockerfile'dan kurulur, db sağlıklı olduktan sonra başlar; işçi sayısı, havuz boyutu ve anahtarlar ortamdan gelir; bağlantı noktası yalnız geri döngü arabiriminde yayımlanır. |
deploy/docker/compose.measure.yml:32-58 |
Compose, değişkenlerin :? biçimi üzerinden MEASURE_DB_PASSWORD (db için) ve MEASURE_SECRET_KEY (app için) olmadan servisleri başlatmayı reddeder (deploy/docker/compose.measure.yml:20, deploy/docker/compose.measure.yml:44). MEASURE_WORKERS işçi sayısını ayarlar ve varsayılanı dörttür (deploy/docker/compose.measure.yml:43). Depolama ve yedek anahtarları, MEASURE_STORAGE_KEY ve MEASURE_BACKUP_KEY ayarsızken sabit test değerlerine düşer (deploy/docker/compose.measure.yml:53-54); değerler güvenlik açıklama politikası gereği yazılmamıştır.
Başlık açıklamaları koşuyu anlatır: db kurulup başlatılır, test veritabanının bir dökümü yüklenir, app başlatılır ve performans bütçesi süiti ona karşı koşturulur (deploy/docker/compose.measure.yml:7-14).
Kısıtlar ve doğrulama¶
- Yığında
CLUSTER_ERP_DEBUGfalseveCLUSTER_ERP_TRUST_PROXY_HEADERSfalsedeğerindedir; böylece üretim açılışının ayar doğrulaması uygulanır (deploy/docker/compose.measure.yml:44,deploy/docker/compose.measure.yml:55). - Konteyner, konteyner ağı içinde tüm arabirimleri dinler (
CLUSTER_ERP_SERVER_HOST) ve ana makineden yalnız geri döngü bağlaması üzerinden erişilebilir (deploy/docker/compose.measure.yml:41,deploy/docker/compose.measure.yml:57-58).
Tanıtılan terimler¶
| Terim | Kod tanımlayıcısı | Tanım | Türkçe terim | Kaynak |
|---|---|---|---|---|
| ölçüm yığını | compose.measure.yml |
Performans bütçelerini ölçmek için uygulama imajını PostgreSQL'in yanında çalıştıran Compose dosyası. | ölçüm yığını | deploy/docker/compose.measure.yml:1-5 |
İlgili sayfalar¶
92f8051 numaralı commit ile 2026-11-13 tarihinde doğrulandı.