Getting Started

60 seconds — that's all it takes to launch UMH Core.

No kubectl, no Kubernetes setup, just a single Docker container. Anything that runs Docker works — from your MacBook terminal to enterprise edge boxes.

Note: This getting-started guide follows the common PLC/sensor path (raw → device models). For ERP integration and other patterns, see the Data Modeling documentation.

System requirements

Minimum:

  • 2 vCPU

  • 4 GB RAM

  • 40 GB SSD

For detailed sizing recommendations, see the Sizing Guide.

  1. Click "Add a new instance"

Instance setup screen
  1. Configure your instance:

    • Name (1): Give it a cool name (e.g., my-first-umh)

    • Type (2): Select "Core" from the dropdown

    • Location (3): Enter your location path:

      • Level 0: your-company (required - your enterprise name)

      • Level 1: Your level 1 name (optional - e.g., site or plant)

      • Level 2-4: Leave empty for now (optional)

    • Click "Add Instance" (4)

  2. Copy the Docker command that appears

  3. Run it on any machine with Docker installed

🎉 Success!

Your instance will appear as "Online" in the Management Console within seconds.

Next step: Connect your first data source →

Option 2: Local Installation (Without Management Console)

If you can't use the cloud Management Console:

mkdir umh-data && cd umh-data
docker run -d --name umh-core \
  -v $(pwd):/data \
  management.umh.app/oci/united-manufacturing-hub/umh-core:latest

Note: Without the Management Console, you'll need to edit configuration files directly. We strongly recommend using Option 1 for the best experience.


Troubleshooting

Volume permission errors If you see s6-svscan: warning: unable to stat benthos-dataflow-* or protocol converters failing to activate, the container cannot write to the mounted volume. Test without the -v flag to confirm, then fix permissions with the :z flag on SELinux systems or ensure write access for the container user.

SELinux volume permissions On RHEL, Rocky, or other SELinux-enabled systems, append :z to the volume mount so Docker can relabel the directory:

-v "$(pwd):/data:z"

If you omit this, you might see chmod: /data/config.yaml: no such file or directory and the container fails to start.

Corporate firewall/proxy issues If your corporate network intercepts TLS traffic, see the Corporate Firewalls Guide to add your CA certificate or, as a last resort, set allowInsecureTLS: true in config.yaml or use -e ALLOW_INSECURE_TLS=true in your docker run command.

For proxy configuration, see the Corporate Firewalls Guide or add these arguments to your docker run:

-e HTTP_PROXY=http://proxy.company.com:8080 \
-e HTTPS_PROXY=https://proxy.company.com:8080 \
-e NO_PROXY=localhost,127.0.0.1,.local

Coming from UMH Classic?

See the Migration Guide for step-by-step migration instructions, including data contract changes and configuration updates.


Concepts Learned

  • UMH Core - Single-container Industrial IoT platform

  • Management Console - Cloud UI for managing instances

  • Instance - A running UMH Core deployment

  • Location hierarchy - Organizational structure (enterprise → site → area → line)

  • Docker container - How UMH Core runs

Ready to Connect Data?

You've successfully installed UMH Core! 🚀

Next step: Connect your first data source →

Last updated