Skip to content
Guy Davis edited this page Jun 24, 2021 · 43 revisions

The project is still in beta, start a Discussion or join our Discord for support and to help out.

2021-06-19: Use test image ghcr.io/guydavis/machinaris:test for MadMax and Workers, full release version coming soon...

As Machinaris is a pure-Docker solution for running the Chia™ the following general guidelines for Docker's run command are generally applicable across OSes. However, we have platform-specific guides for Windows, Linux, MacOS, Unraid, Portainer, and others.

The following guide covers a standalone install on a single machine. Once launched, just browse to http://localhost:8926.

Standalone

Machinaris also supports monitoring and controlling multiple workers on your local-area-network.

Pre-requisites

You'll need a recent Docker installed.

Install and Launching

Most users will want to run a full-node with all services started and full-functionality available.

Example launch on Windows:

docker run --name machinaris -d -t -h (hostname) --dns (Get-DnsClientServerAddress -AddressFamily IPv4 | Select-Object -ExpandProperty ServerAddresses) -p 8444:8444 -p 8926:8926 -e TZ="America/Edmonton" -v C:\Users\MY_USERNAME\.machinaris:/root/.chia:rw -v X:\MY_PLOTTING_DRIVE:/plotting:rw -v Y:\MY_PLOTS_DRIVE:/plots:rw ghcr.io/guydavis/machinaris:test

Example launch on Linux:

docker run --name='machinaris' -d -t -h $(hostname -s) -p 8444:8444 -p 8926:8926 -e TZ="America/Edmonton" -v '/home/USER/.machinaris':'/root/.chia':'rw' -v '/path/to/plots':'/plots':'rw' -v '/path/to/temp':'/plotting':'rw' ghcr.io/guydavis/machinaris:test

Example launch on MacOS:

docker run --name machinaris -d -t -h $(hostname -s) -p 8444:8444 -p 8926:8926 -e TZ=America/Edmonton -v /Users/USER/.machinaris:/root/.chia:rw -v /Volumes/MyVolume1/plotting:/plotting:rw -v /Volumes/MyVolume2/plots:/plots:rw ghcr.io/guydavis/machinaris:test

Change the following host paths and variables highlighted in bold, before running the command above:

  • /home/USER/.machinaris: Will hold the application data, config, and logs for Chia, Plotman, and Machinaris.
  • /path/to/plots: Will hold the finished plot files after plotting and when farming.
  • /path/to/temp: Should be your fast temporary plotting space.
  • America/Edmonton: Change to your local timezone.

This will pull the Machinaris image from Docker Hub and launch it on your system in the background. Browse to http://localhost:8926 to view the WebUI. To stop Machinaris container, you can run docker rm machinaris or similar.

Docker Compose

Here's an example config for use with Docker Compose, if you prefer that to docker run:

  machinaris:
    container_name: machinaris
    image: ghcr.io/guydavis/machinaris
    restart: always
    tty: true
    ports:
      - "8444:8444"
      - "8926:8926"
    volumes:
      - "/home/USER/.machinaris:/root/.chia:rw"
      - "/path/to/plotting:/plotting:rw"
      - "/path/to/plots:/plots:rw"
    environment:
      - TZ=$TZ

As above, change the following host paths and variables highlighted in bold, before running the command above:

  • /home/USER/.machinaris: Will hold the application data, config, and logs for Chia, Plotman, and Machinaris.
  • /path/to/plots: Will hold the finished plot files after plotting and when farming.
  • /path/to/temp: Should be your fast temporary plotting space.
  • America/Edmonton: Change to your local timezone.

Other Modes

A Machinaris plotter is a remotely-controlled worker. Please see the Workers page for details on launching a plotter, a harvester, a harvester+plotter instead.

Post-Install Configuration

Once you have launched Machinaris, be sure to do the following, regardless of which platform you are using. For fullnode (default) and farmer modes, you'll need to either import a key or generate a new one as described below. Plotter and harvester modes DO NOT require key import or generation (see steps above).

Import Key Mnemonic

Just browse

GenerateKey

Port-Forward TCP/8444

For your full-node, you should port-forward your router back to your Docker container on port tcp/8444. This is required to stay synced and thus participating in farming challenges.

Here's an example port-forward config from my Unifi-router:

PortForward

Clone this wiki locally