Files
aitbc/systemd/aitbc-real-marketplace.service
aitbc 7de29c55fc feat: move data directory from repository to system location
 Data Directory Restructure
- Moved /opt/aitbc/data to /var/lib/aitbc/data (proper system location)
- Updated all production services to use system data path
- Updated systemd services to use system data path
- Created symlink for backward compatibility
- Created proper data directories in /var/lib/aitbc/data/

 Services Updated
- Marketplace: /var/lib/aitbc/data/marketplace
- Blockchain: /var/lib/aitbc/data/blockchain
- OpenClaw: /var/lib/aitbc/data/openclaw
- All services now using system data paths

 System Compliance
- Data stored in /var/lib/aitbc (FHS compliant)
- Repository no longer contains runtime data
- Backward compatibility maintained with symlink
- Production services using correct system paths

🚀 AITBC now follows proper system data directory structure!
2026-04-02 13:45:14 +02:00

47 lines
1.1 KiB
Desktop File

[Unit]
Description=AITBC Real Marketplace with AI Services
After=network.target aitbc-mining-blockchain.service aitbc-openclaw-ai.service
[Service]
Type=simple
User=root
Group=root
WorkingDirectory=/opt/aitbc
Environment=PATH=/usr/bin:/usr/local/bin:/usr/bin:/bin
Environment=NODE_ID=aitbc
Environment=REAL_MARKETPLACE_PORT=8009
Environment=PYTHONPATH=/opt/aitbc/production/services
EnvironmentFile=/opt/aitbc/production/.env
# Real marketplace execution
ExecStart=/opt/aitbc/venv/bin/python /opt/aitbc/production/services/real_marketplace_launcher.py
ExecReload=/bin/kill -HUP $MAINPID
KillMode=mixed
TimeoutStopSec=10
# Marketplace reliability
Restart=always
RestartSec=5
StartLimitBurst=5
StartLimitIntervalSec=60
# Marketplace logging
StandardOutput=journal
StandardError=journal
SyslogIdentifier=aitbc-real-marketplace
# Marketplace security
NoNewPrivileges=true
ProtectSystem=strict
ProtectHome=true
ReadWritePaths=/var/lib/aitbc/data/marketplace /opt/aitbc/production/logs/marketplace
# Marketplace performance
LimitNOFILE=65536
LimitNPROC=4096
MemoryMax=1G
CPUQuota=40%
[Install]
WantedBy=multi-user.target