بنقرة واحدة
podman-deployment
Podman Compose deployment patterns for crypto-scout-client containerization and RabbitMQ integration
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Podman Compose deployment patterns for crypto-scout-client containerization and RabbitMQ integration
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Java 25 code style conventions for crypto-scout-client including naming, imports, error handling, and testing patterns
Java 25 microservice development patterns for crypto-scout-client including modules, AMQP publishing, and WebSocket consumers
| name | podman-deployment |
| description | Podman Compose deployment patterns for crypto-scout-client containerization and RabbitMQ integration |
| license | MIT |
| compatibility | opencode |
| metadata | {"tools":"podman","services":"rabbitmq","domain":"deployment","version":"0.0.1"} |
Guide containerized deployment of crypto-scout-client with Podman, including RabbitMQ Streams integration.
crypto-scout-parser-clientcrypto-scout-client:0.0.1crypto-scout-parser-client| Resource | Value |
|---|---|
| CPUs | 0.5 |
| Memory Limit | 256m |
| Memory Reservation | 128m |
| PIDs Limit | 256 |
| Open Files (soft/hard) | 4096 |
security_opt:
- no-new-privileges=true
read_only: true
cap_drop:
- ALL
user: "10001:10001"
init: true
tmpfs:
- /tmp:rw,size=512m,mode=1777,nodev,nosuid
healthcheck:
test: [ "CMD-SHELL", "curl -f http://localhost:8081/health || exit 1" ]
interval: 10s
timeout: 3s
retries: 5
start_period: 30s
restart: unless-stopped
stop_signal: SIGTERM
stop_grace_period: 30s
mvn clean package -DskipTests
podman build -t crypto-scout-client:0.0.1 .
podman network create crypto-scout-bridge
podman-compose up -d
podman inspect --format='{{.State.Health.Status}}' crypto-scout-parser-client
Secrets are loaded from secret/parser-client.env (gitignored).
| Variable | Description |
|---|---|
AMQP_RABBITMQ_PASSWORD | Required - RabbitMQ password |
CMC_API_KEY | Required - CoinMarketCap API key |
| Variable | Default | Description |
|---|---|---|
SERVER_PORT | 8081 | HTTP server port |
AMQP_RABBITMQ_HOST | localhost | RabbitMQ host |
AMQP_RABBITMQ_USERNAME | crypto_scout_mq | RabbitMQ user |
AMQP_STREAM_PORT | 5552 | RabbitMQ Streams port |
BYBIT_API_KEY | - | Bybit API key |
BYBIT_API_SECRET | - | Bybit API secret |
CMC_PARSER_MODULE_ENABLED | true | Enable CMC parser |
BYBIT_STREAM_MODULE_ENABLED | false | Enable Bybit streams |
TZ | UTC | Timezone |
Secrets are managed via env files:
secret/parser-client.env - Runtime secrets (gitignored)secret/client.env.example - Template for secretscp secret/client.env.example secret/parser-client.env
$EDITOR secret/parser-client.env
Example secret/parser-client.env:
AMQP_RABBITMQ_PASSWORD=your-secure-password
CMC_API_KEY=your-cmc-api-key
BYBIT_API_KEY=your-bybit-key
BYBIT_API_SECRET=your-bybit-secret
java -jar target/crypto-scout-client-0.0.1.jar
export AMQP_RABBITMQ_PASSWORD="secure-password"
export CMC_API_KEY="your-cmc-key"
java -jar target/crypto-scout-client-0.0.1.jar
curl -fsS http://localhost:8081/health
bybit-stream, crypto-scout-streamWhen RabbitMQ runs on the host (not in container):
AMQP_RABBITMQ_HOST=host.containers.internal
podman --versionpodman-compose --versionpodman logs crypto-scout-parser-clientsecret/parser-client.envAMQP_RABBITMQ_HOST=host.containers.internalpodman network inspect crypto-scout-bridgebybit-stream, crypto-scout-streamtmpfs:
- /tmp:rw,size=1g,mode=1777,nodev,nosuid
mem_limit: "512m"
Use this skill when: