Skip to content

Nvidia GPU mining setup for Ubuntu Server. Docker based using nvidia-docker. Supports ETH, ZEC and DCR mining.

License

Notifications You must be signed in to change notification settings

kristophjunge/gpu-miner-nvidia

Repository files navigation

GPU Miner Nvidia

GitHub Stars GitHub Forks GitHub License

Nvidia

Nvidia GPU mining setup for Ubuntu Server. Docker based using nvidia-docker. Supports ETH, ZEC, DCR, MSR mining.

Mining is causing environmental issues and will possibly not go away soon. Iam sharing this setup for easy to use energy efficient GPU mining from the software side.

Warning: This project is experimental and can damage your hardware! Use at your own risk!

Features

  • Based on Ubuntu Server 18.04.
  • Minimal x server dummy with xserver-xorg-legacy.
  • Docker based with nvidia-docker and docker-compose.
  • Nvidia driver installation.
  • Improved version of Genoils Cuda Miner for ETH mining.
  • EWBF Miner for ZEC mining.
  • Gominer for DCR mining.
  • XMR-Stak for MSR mining.
  • Overclocking. Prepackaged with overclocking profiles for GTX1070.
  • Prometheus exporters for system, GPU and mining metrics.
  • CLI installation script.
  • Automatic restart of crashed processes.
  • Cyclic logfile clearing.
  • Daily reboot or shutdown.

Changelog

See CHANGELOG.md for information about the latest changes.

Used Containers

This project orchestrates the following docker containers:

Prerequisites

  • Ubuntu Server 18.04
  • Git

Installation

Clone the GIT repository into the target location (Do not use other locations):

sudo git clone https://github.com/kristophjunge/gpu-miner-nvidia.git /opt/gpu-miner-nvidia

Run the setup script:

sudo /opt/gpu-miner-nvidia/script/setup.sh

Manual Configuration

Duplicate the default configuration file:

sudo cp /opt/gpu-miner-nvidia/.env.default /opt/gpu-miner-nvidia/.env 

Configure the variables in /opt/gpu-miner-nvidia/.env.

Set GPUMINERNVIDIA_NAME to the hostname.

The variable GPUMINERNVIDIA_MODE controls the mode in which the miner should run. Current options are eth, zec, dcr. Its also possible to leave the value empty which will start only the basic monitoring containers.

Overclocking

Overclocking is configured by placing an oc-profile file in the appropriate subdirectory in the mode folder.

An example oc-profile file is located under data/oc-profile/oc-profile-example.

The project is prepackaged with overclocking profiles for the GTX1070. To apply these execute the following command:

sudo cp -r /opt/gpu-miner-nvidia/data/oc-profile/gtx1070/* /opt/gpu-miner-nvidia/mode

Usage

Start and stop the service:

sudo service gpu-miner-nvidia start
sudo service gpu-miner-nvidia stop

Enable the service for automatic startup:

sudo systemctl enable gpu-miner-nvidia.service

Reboot:

/opt/gpu-miner-nividia/script/reboot.sh

Shutdown:

/opt/gpu-miner-nividia/script/shutdown.sh

Logs

The main service writes its log to gpu-miner-nvidia.log.

All other containers have their own log output.

Limitations And Known Issues

  • Mining multiple coins in parallel is not possible. Not on the same GPU and also not in a split setup.
  • Gominer has no Prometheus exporter.

Contributing

See CONTRIBUTING.md for information on how to contribute to the project.

See CONTRIBUTORS.md for the list of contributors.

License

This project is licensed under the MIT license by Kristoph Junge.

About

Nvidia GPU mining setup for Ubuntu Server. Docker based using nvidia-docker. Supports ETH, ZEC and DCR mining.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages