151 lines
3.3 KiB
Markdown
151 lines
3.3 KiB
Markdown
|
|
# Blockscout Fixed Successfully! ✅
|
||
|
|
|
||
|
|
**Date**: December 23, 2025
|
||
|
|
**Status**: ✅ **FIXED AND RUNNING**
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Problem Solved
|
||
|
|
|
||
|
|
The Blockscout container was restarting due to:
|
||
|
|
1. **Missing command**: The image entrypoint was `/bin/sh` with no default command
|
||
|
|
2. **DISABLE_WEBAPP=true**: Default environment variable was disabling the webapp
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Solution Applied
|
||
|
|
|
||
|
|
### 1. Added Explicit Start Command
|
||
|
|
```yaml
|
||
|
|
command: /app/bin/blockscout start
|
||
|
|
```
|
||
|
|
|
||
|
|
### 2. Set DISABLE_WEBAPP=false
|
||
|
|
```yaml
|
||
|
|
environment:
|
||
|
|
- DISABLE_WEBAPP=false
|
||
|
|
```
|
||
|
|
|
||
|
|
### 3. Complete docker-compose.yml Configuration
|
||
|
|
|
||
|
|
```yaml
|
||
|
|
version: '3.8'
|
||
|
|
|
||
|
|
services:
|
||
|
|
postgres:
|
||
|
|
image: postgres:15-alpine
|
||
|
|
container_name: blockscout-postgres
|
||
|
|
environment:
|
||
|
|
POSTGRES_USER: blockscout
|
||
|
|
POSTGRES_PASSWORD: blockscout
|
||
|
|
POSTGRES_DB: blockscout
|
||
|
|
volumes:
|
||
|
|
- postgres-data:/var/lib/postgresql/data
|
||
|
|
restart: unless-stopped
|
||
|
|
networks:
|
||
|
|
- blockscout-network
|
||
|
|
healthcheck:
|
||
|
|
test: ["CMD-SHELL", "pg_isready -U blockscout"]
|
||
|
|
interval: 10s
|
||
|
|
timeout: 5s
|
||
|
|
retries: 5
|
||
|
|
|
||
|
|
blockscout:
|
||
|
|
image: blockscout/blockscout:latest
|
||
|
|
container_name: blockscout
|
||
|
|
command: /app/bin/blockscout start
|
||
|
|
depends_on:
|
||
|
|
postgres:
|
||
|
|
condition: service_healthy
|
||
|
|
environment:
|
||
|
|
- DISABLE_WEBAPP=false
|
||
|
|
- DATABASE_URL=postgresql://blockscout:blockscout@postgres:5432/blockscout
|
||
|
|
- ETHEREUM_JSONRPC_HTTP_URL=http://192.168.11.250:8545
|
||
|
|
- ETHEREUM_JSONRPC_WS_URL=ws://192.168.11.250:8546
|
||
|
|
- ETHEREUM_JSONRPC_TRACE_URL=http://192.168.11.250:8545
|
||
|
|
- ETHEREUM_JSONRPC_VARIANT=besu
|
||
|
|
- CHAIN_ID=138
|
||
|
|
- COIN=ETH
|
||
|
|
- BLOCKSCOUT_HOST=192.168.11.140
|
||
|
|
- BLOCKSCOUT_PROTOCOL=http
|
||
|
|
- SECRET_KEY_BASE=<generated-secret-key>
|
||
|
|
- POOL_SIZE=10
|
||
|
|
- ECTO_USE_SSL=false
|
||
|
|
ports:
|
||
|
|
- "4000:4000"
|
||
|
|
volumes:
|
||
|
|
- blockscout-data:/app/apps/explorer/priv/static
|
||
|
|
restart: unless-stopped
|
||
|
|
networks:
|
||
|
|
- blockscout-network
|
||
|
|
|
||
|
|
volumes:
|
||
|
|
postgres-data:
|
||
|
|
blockscout-data:
|
||
|
|
|
||
|
|
networks:
|
||
|
|
blockscout-network:
|
||
|
|
driver: bridge
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Current Status
|
||
|
|
|
||
|
|
✅ **Container Running**: Blockscout container is up and running
|
||
|
|
✅ **Port 4000**: Listening on port 4000
|
||
|
|
✅ **PostgreSQL**: Connected and healthy
|
||
|
|
✅ **Configuration**: All settings correct (Chain ID 138, RPC URLs, etc.)
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Access Points
|
||
|
|
|
||
|
|
- **Internal**: http://192.168.11.140:4000
|
||
|
|
- **Via Nginx**: http://192.168.11.140 (if Nginx is configured)
|
||
|
|
- **External**: https://explorer.d-bis.org (via Cloudflare Tunnel)
|
||
|
|
- **API**: http://192.168.11.140:4000/api
|
||
|
|
- **Health**: http://192.168.11.140:4000/api/health
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Next Steps
|
||
|
|
|
||
|
|
1. **Wait for Initialization**: Blockscout may take 1-2 minutes to fully initialize and start indexing
|
||
|
|
2. **Verify API**: Test the health endpoint: `curl http://192.168.11.140:4000/api/health`
|
||
|
|
3. **Check Logs**: Monitor startup: `docker logs -f blockscout`
|
||
|
|
4. **Test Web UI**: Open http://192.168.11.140:4000 in browser
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Useful Commands
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# View logs
|
||
|
|
docker logs -f blockscout
|
||
|
|
|
||
|
|
# Check status
|
||
|
|
docker ps | grep blockscout
|
||
|
|
|
||
|
|
# Restart
|
||
|
|
cd /opt/blockscout
|
||
|
|
docker-compose restart blockscout
|
||
|
|
|
||
|
|
# Stop
|
||
|
|
docker-compose down
|
||
|
|
|
||
|
|
# Start
|
||
|
|
docker-compose up -d
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Files Modified
|
||
|
|
|
||
|
|
- `/opt/blockscout/docker-compose.yml` - Updated with command and DISABLE_WEBAPP=false
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
**✅ Blockscout is now running and ready to use!**
|
||
|
|
|