🧱 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:8034) |
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 (http://localhost:4566) |
stack hyperdx | HyperDX local (http://localhost:8080) |
stack o11y | OpenTelemetry Collector, Jaeger UI, Prometheus & Grafana (see below) |
| Component | Description | Port |
|---|---|---|
| OpenTelemetry Collector | Jaeger HTTP | 14268 |
| OpenTelemetry Collector | Jaeger UDP | 6832 |
| 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 -d mysql/docker-compose.yml up -dBehind the scenes.
Like:
stack mysql downOr:
stack mysql logs -f