44 lines
834 B
Plaintext
44 lines
834 B
Plaintext
version: '3.8'
|
|
|
|
services:
|
|
argparse-builder:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: argparse-builder
|
|
ports:
|
|
- "8080:8080"
|
|
restart: unless-stopped
|
|
|
|
# Resource limits
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
cpus: '0.5'
|
|
memory: 128M
|
|
reservations:
|
|
cpus: '0.1'
|
|
memory: 32M
|
|
|
|
# Security
|
|
read_only: true
|
|
cap_drop:
|
|
- ALL
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
|
|
# Health check
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget --no-verbose --tries=1 --spider http://localhost:8080/ || exit 1"]
|
|
interval: 30s
|
|
timeout: 3s
|
|
retries: 3
|
|
start_period: 5s
|
|
|
|
# Logging
|
|
logging:
|
|
driver: "json-file"
|
|
options:
|
|
max-size: "10m"
|
|
max-file: "3"
|