🧱 Common infrastructure components in a single command.
bash -c "$(curl -fsSL https://raw.githubusercontent.com/opencodeco/stack/main/install.sh)"| Component | Description |
|---|---|
stack mysql |
MySQL & phpMyAdmin (http://localhost:8031) |
stack redis |
Redis & RedisInsight (http://localhost:8032) |
stack mongo |
MongoDB & Mongo Express (http://localhost:8033) |
stack postgres |
PostgreSQL & pgAdmin (http://localhost:8039) |
stack kafka |
Kafka and UI for Apache Kafka (http://localhost:8037) |
stack rabbitmq |
RabbitMQ & Management Plugin (http://localhost:8038) |
stack aws |
AWS services via LocalStack (legacy, see details below) (http://localhost:4566) |
stack aws-ministack |
AWS services via MiniStack (http://localhost:4567) |
stack hyperdx |
HyperDX local (http://localhost:8080) |
stack o11y |
OpenTelemetry Collector, Jaeger UI, Prometheus & Grafana (see below) |
| Component | Description | Port |
|---|---|---|
| OpenTelemetry Collector | Statsd UDP | 8125 |
| OpenTelemetry Collector | OTLP gRPC | 4317 |
| OpenTelemetry Collector | OTLP HTTP | 4318 |
| Jaeger UI | Traces | http://localhost:8034 |
| Prometheus | Metrics | http://localhost:8035 |
| Grafana | Dashboards & Alerts | http://localhost:8036 |
| Command | Description |
|---|---|
stack ls or stack ps |
List running containers |
stack path |
Display where Stack is located |
stack network |
Create the external opencodeco network |
Whether to avoid conflicts or to set a port number that fits best for your enviroment, you can create a .env file at stack path and change port numbers based on .env.dist.
Just clone this repository:
git clone https://github.com/opencodeco/stack.git
cd stack
make installYou can use the built-in Shell Script helper:
stack <component> <docker compose command>The <docker compose command> defaults to up -d, so:
stack mysqlWill be the same as:
stack mysql up -dWhich does a:
docker-compose -f mysql/docker-compose.yml up -dBehind the scenes.
Like:
stack mysql downOr:
stack mysql logs -fstack aws (LocalStack) |
stack aws-ministack (MiniStack) |
|
|---|---|---|
| Free | ✅ Free forever (MIT) | |
| Account / API key | Required | Not required |
| Telemetry | Yes | No |
| Services | 30+ (many paid) | 30+ |
stack aws(LocalStack) is considered legacy. LocalStack moved most of its core services behind a paid subscription.stack aws-ministackusing MiniStack is the recommended free alternative — it is a drop-in replacement compatible with any AWS CLI or SDK tool via--endpoint-url=http://localhost:4567.
Note on upgrades: Major version upgrades for MySQL (8→9), MongoDB (6→8), and RabbitMQ (3→4) may require recreating volumes if you have existing data. Run
stack <component> down -vto remove volumes before upgrading.