console-cowboy / DNP_BIND

Dappnode package responsible for providing DNS resolution

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DAppNode Package Bind (Core)

Website dappnode.io Documentation Wiki GIVETH Campaign RIOT DAppNode Twitter Follow

Dappnode package responsible for providing DNS resolution

It is an AragonApp whose repo is deployed at this address: 0xb7e15019b306b9d76068742330e10cdc61bf5006 and whose ENS address is: bind.dnp.dappnode.eth

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

  • git

    Install git commandline tool.

  • docker

    Install docker. The community edition (docker-ce) will work. In Linux make sure you grant permissions to the current user to use docker by adding current user to docker group, sudo usermod -aG docker $USER. Once you update the users group, exit from the current terminal and open a new one to make effect.

  • docker-compose

    Install docker-compose

Note: Make sure you can run git, docker ps, docker-compose without any issue and without sudo command.

Building

$ git clone https://github.com/dappnode/DNP_BIND
$ docker-compose build
or
$ docker build --rm -f build/Dockerfile -t bind.dnp.dappnode.eth:dev build

Running

Start

$ docker-compose up -d

Stop

$ docker-compose  down

Status

$ docker-compose  ps

Logs

$ docker-compose  logs -f

Testing

The mission of this repo by itself is only to check the functionality provided by the bind service.

For this, once it has been started, you can run the below command to check that it resolves the expected address:

eduadiez~ $ dig @172.33.1.2 bind.dappnode.eth

; <<>> DiG 9.9.4-RedHat-9.9.4-61.el7_5.1 <<>> @172.33.1.2 bind.dappnode.eth
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8657
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;bind.dappnode.eth.		IN	A

;; ANSWER SECTION:
bind.dappnode.eth.	38400	IN	A	172.33.1.3

;; Query time: 2 msec
;; SERVER: 172.33.1.2#53(172.33.1.2)
;; WHEN: Sun Oct 07 11:39:18 CEST 2018
;; MSG SIZE  rcvd: 62

Generating a tar.xz image

xz is required

$ docker save bind.dnp.dappnode.eth:dev | xz -e9vT0 > bind.dnp.dappnode.eth_x.y.z.tar.xz

You can download the latest tar.xz version from here releases.

Loading a Docker image

$docker load -i bind.dnp.dappnode.eth_x.y.z.tar.xz

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

  • Eduardo Antuña Díez - Initial work - eduadiez

See also the list of contributors who participated in this project.

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details

References

git

docker

docker-compose

BIND

About

Dappnode package responsible for providing DNS resolution

License:GNU General Public License v3.0


Languages

Language:Shell 70.9%Language:Dockerfile 29.1%