-
Notifications
You must be signed in to change notification settings - Fork 69
FAQ
Start a Discussion or join our Discord for support and to help out.
Table of Contents
Machinaris is a community-supported project with helpful users, willing to lend a hand, particularly on initial setup. Check out our Discord group, Github Issues, Unraid Support thread, or Machinaris sub-reddit.
docker exec -it machinaris bash
kill $(pidof "gunicorn: master [web:app]")
kill $(pidof "gunicorn: master [api:app]")
... then later when you want the WebUI running again ...
/machinaris/scripts/start_machinaris.sh
Yes, you can try that to avoid initial blockchain sync time. Users report about a 50% success rate though, so be sure to save your fresh copies from Machinaris. First stop the Machinaris container, then from the ~/.machinaris/ path (or similar) on your Host OS disk:
mv mainnet/db mainnet/db.fresh
cp -r /PATH/TO/OLD/db mainnet/db
mv mainnet/wallet/db mainnet/wallet/db.fresh
cp -r /PATH/TO/OLD/wallet/db mainnet/wallet/db
Start up Machinaris container and look very closely at:
- ~/.machinaris/mainnet/log/init.log
- ~/.machinaris/mainnet/log/debug.log
Also verify farming is starting with chia farm summary
and wallet is running with chia wallet show
.
By default, Machinaris stores its appdata (including the full Chia blockchain @ 30 GB) in the $HOME directory of the OS user. So, when creating a docker-compose.yml
at https://www.machinaris.app, you will see a Volume line like:
- ~/.machinaris:/root/.chia
This tells Machinaris to store its appdata in a folder like C:\Users\USERNAME\.machinaris
. To move this:
- Stop all the Machinaris containers.
- Move all the
.machinaris*
folders from C:\Users\USERNAME over to D:\machinaris_appdata(for example) - In your
docker-compose.yml
change all occurrences of~/.machinaris*
to "D:/machinaris_appdata/machinaris*" for example. - Then start up the containers one by one.
They should then use the appdata folder on D: drive instead of C:, with nothing in state lost.
Yes, just mount both temp plotting volumes in-container. For example, let's say you have:
-
/mnt/disks/ssd1
mapped to/plotting1
in container. -
/mnt/disks/ssd2
mapped to/plotting2
in container.
On Docker run, this looks like -v '/mnt/disks/ssd1':'/plotting1':'rw'
and -v '/mnt/disks/ssd2':'/plotting2':'rw'
Then set the plotman.yaml directories:tmp
section to have two entries similar to this:
Yes, Plotman supports archiving via rsync
in the plotman.yaml file transfer completed plots to a destination server, without tying up resources for your plotting. For detailed configuration in Machinaris, see this wiki page.
Unfortunately, no. A Docker container is a lot like a small virtual machine, so restarting the container is like rebooting the VM. However, if you are plotting, first stop Plotman on the Plotting page. This will prevent new plotting jobs from launching, but will allow existing jobs to complete. Then later, when your plotting jobs are done, you can restart the Machinaris container and/or update the Docker image without impacting plotting.
Try the following in your plotman config, allows 2 concurrent jobs, but won't start a second until the very end stage (copying) of the first job:
tmpdir_stagger_phase_major: 5
tmpdir_stagger_phase_minor: 0
# Optional: default is 1
tmpdir_stagger_phase_limit: 1
# Don't run more than this many jobs at a time on a single temp dir.
# Increase for staggered plotting by chia, leave at 1 for madmax sequential plotting
tmpdir_max_jobs: 2
# Don't run more than this many jobs at a time in total.
# Increase for staggered plotting by chia, leave at 1 for madmax sequential plotting
global_max_jobs: 2
Yes, Machinaris can slowly remove old plots while you plot new ones. Please see more on the settings to enable this functionality.
docker exec -it machinaris bash
chia start farmer -r
Unfortunately, sometimes the Chiadog log monitor incorrectly flags a Harvester (or local Harvester service) as being offline, even though the ~/.machinaris/mainnet/log/debug.log clearly shows that harvesting/farming is occurring. If this recurs even after a restart of the Machinaris container, then try to remove the debug.log after stopping the container, then restart Machinaris.
Yes, Machinaris supports this for both farming and as a plotting destination. First, you need to mount them as separate volumes in-container. For example, let's say you have:
-
/mnt/disks/disk1/plots
mapped to/plots1
in container. -
/mnt/disks/disk2/plots
mapped to/plots2
in container.
Using the Machinaris launch wizard, your docker-compose.yml looks like:
volumes:
/mnt/disks/disk1/plots:/plots1
/mnt/disks/disk2/plots:/plots2
environment:
plots_dir=/plots1:/plots2
With Unraid, go the Unraid Admin UI, click Docker tab, then select Machinaris from the list of containers and choose Edit. You would then edit the Variable named plots_dir
to hold the colon-separated list of your container paths. (Toggle 'Advanced View' first!) NOTE: This is not a Path configuration in Unraid, but rather a Variable:
If you are farming successfully, every 10 secs or so, you should see a new challenge such as this:
If you don't see any challenges, it could be fine. Perhaps you don't have plots, perhaps you still syncing, perhaps you started up...
However, if the problem persists, then you are NOT farming and you are not eligible to win XCH rewards. If that's the case, take a close look at the Alerts page for notifications of errors from Chiadog. Also, it's worth looking into the Chia log yourself. Depending on your volume mounts, you'll find mainnet/logs/debug.log
.
Some users, particularly those with lots of plots, have reported that the main Machinaris status (and chia farm summary
behind the scenes) report zero plots on initial start up, even when plots exist in the /plots
directory. This generally resolves itself as Chia catches up on syncing/startup so just wait a while and check later. One user reported 30 minutes for them once.
This is a serious issue where Machinaris listed all configured Plot folders and found X plot files. However, the Chia farming service (chia farm summary
) is reporting Y plots on same system, where Y may be zero. This mismatch may indicate a problem with the harvesting service running on the remote Harvester and warrants investigation into the ~/.machinaris/mainnet/log/debug.log file to ensure harvesting started successfully.
Default network peers for Chia is 80, but this is configurable.
Machinaris is a simple web app for access to your blockchain and plotting. It is intended for use on your local area network only, but you may choose to proxy access to it via other web servers. If you do this, then your web server should have many means of securing/authenticating access to proxy targets such as Machinaris. The onus is on you to configure this correctly for you particular setting.
That's a good question. Nice to meet you! My name is Guy Davis. I'm a middle-aged Canadian, with a regular day job, a lovely wife, and two great kids. Back in April 2021, I tried the "official" docker image on my Unraid server. Unlike many other good apps for Unraid, it was commandline-only, required manual plotting, and manual log monitoring. Too much babysitting! I wanted a WebUI with automatic staggered plotting and monitoring/alerting.
This led me to create Machinaris project, whose code-base is completely open-source and which is built via fully-reviewable Github Actions. I take private key security seriously and am actively looking to improve security with each release.
If you have any concerns, please feel to raise them in our Discord group, Github Issues, Unraid Support thread, or Machinaris sub-reddit.
Do I skim each new blockchain repository? Yes. Do I personally vet all commits for a blockchain, both now and in the future? No, not enough time in the day.
As such, running any Chia fork is an exercise in trust with the blockchain developers. Farming to a cold wallet address helps to minimize impacts, but not completely mitigate.
For example, I've encountered a number of users in the Chia ecosystem that complain about the Chia GUI or CLI, but when offered an alternative (tool or fork), they prefer to live with their complaints, trusting only the Chia first-party application. Totally understandable decision for some.
Everyone has a different risk tolerance, and only they can decide what they are comfortable investing their time and hardware towards.
While your thanks are appreciated, I just enjoy programming in my spare time. No need to donate. Instead, please share the word on Machinaris with others who would also find it useful. Feel free to drop into the Discord server to help other new users with the knowledge you've gained about Chia.
If you find the Machinaris applications useful, please star them on Github and Dockerhub, if you have logins there.
CHIA NETWORK INC, CHIA™, the CHIA BLOCKCHAIN™, the CHIA PROTOCOL™, CHIALISP™ and the “leaf Logo” (including the leaf logo alone when it refers to or indicates Chia), are trademarks or registered trademarks of Chia Network, Inc., a Delaware corporation. There is no affiliation between the Machinaris project and the main Chia Network project.