This repository contains Ansible roles to install and run
go-ipfs
and
IPFS Cluster
.
They include a Systemd service file both.
If you are familiar with Ansible, you can just re-use the modules in the way that fits you best. Otherwise follow these steps:
- Make sure you have ansible installed:
pip install ansible
. - Fill in
inventory.yml
and place the hostnames of your nodes under the[ipfs]
group. - Edit the
group_vars/ipfs.yml
andgroup_vars/ipfs-cluster.yml
file setting the right configuration values, including generating an IPFS Cluster secret withod -vN 32 -An -tx1 /dev/urandom | tr -d ' \n' ; echo
- Add a file for each hostname (filename is the hostname), to the
host_vars
folder as outlined inhost_vars/README.md
, containing the necessary host-specific variables (example in thehost_vars
README). - Run
make
.
make
will run ansible for the ipfs
and the ipfs-cluster
roles, which
apply to the [ipfs]
and [ipfs-cluster]
inventory group. Upon successful,
both go-ipfs
and ipfs-cluster
should be running in the nodes (they are
installed under /usr/local/bin
and run by a created ipfs
system user).
You can use systemctl status ipfs
and systemctl status ipfs-cluster
to
check the status of the new services.
Note that ipfs
configuration has been generated using profile=server
, thus
will not automatically scan the local network.