managerrunner

package
v0.0.0-...-9944d71 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 24, 2026 License: MIT Imports: 28 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(cfg *Config, pg *proxygate.ProxyGate) (runner.Runner, error)

New creates a new ManagerRunner

Types

type Config

type Config struct {
	// DatabaseURL is the PostgreSQL connection string or SQLite file path
	DatabaseURL string

	// Address is the HTTP server address
	Address string

	// StaticFolder is the path to static frontend files
	StaticFolder string

	// DataFolder is where to store temporary files
	DataFolder string

	// Redis configuration for job queue and cache
	RedisURL  string
	RedisAddr string
	RedisPass string
	RedisDB   int

	// RabbitMQ configuration for job queue
	RabbitMQURL string

	// Spawner configuration for auto-spawning workers
	SpawnerType        string            // none, docker, swarm, lambda
	SpawnerImage       string            // Docker image for worker containers
	SpawnerNetwork     string            // Docker network to attach workers
	SpawnerConcurrency int               // Concurrency per spawned worker
	SpawnerMaxWorkers  int               // Max concurrent workers (0 = unlimited)
	SpawnerAutoRemove  bool              // Auto-remove containers after exit
	SpawnerLabels      map[string]string // Labels for spawned containers
	SpawnerConstraints []string          // Swarm placement constraints
	SpawnerManagerURL  string            // Manager URL for spawned workers (Dokploy: use service name)
	SpawnerProxies     string            // Proxy URL for spawned workers (e.g., socks5://manager:8081)

	// AWS Lambda spawner configuration
	SpawnerLambdaFunction   string // Lambda function name/ARN
	SpawnerLambdaRegion     string // AWS region for Lambda
	SpawnerLambdaInvocation string // Event (async) or RequestResponse (sync)
	SpawnerLambdaMaxConc    int    // Max concurrent Lambda invocations
}

Config holds configuration for the manager runner

type ManagerRunner

type ManagerRunner struct {
	// contains filtered or unexported fields
}

ManagerRunner runs the manager (Web UI + API) without scraping

func (*ManagerRunner) Close

func (m *ManagerRunner) Close(_ context.Context) error

Close cleans up resources

func (*ManagerRunner) Run

func (m *ManagerRunner) Run(ctx context.Context) error

Run starts the manager

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL