Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/bcoin-org/bcoin-docker

Docker configs for bcoin
https://github.com/bcoin-org/bcoin-docker

Last synced: 6 days ago
JSON representation

Docker configs for bcoin

Awesome Lists containing this project

README

        

Bcoin on Docker
=====

Start up a bcoin node quickly using Docker.
Pulls latest bcoin version from github and starts full node.

By default, persists data in user home directory at `~/.bcoin`.

How To Use
----

Copy sample configurations to `secrets/` directory:
>Important: Be sure to keep API secrets safe.
```
$ mkdir -p secrets
$ cp bcoin.example.conf secrets/bcoin.conf
$ cp wallet.example.conf secrets/wallet.conf
```

Create `bcoin` network:
```
$ docker network create bcoin
```

Create `nginx-proxy` network:
```
$ docker network create nginx-proxy
```

Quick run, node only:
```
$ docker-compose up -d bcoin
```

Update to latest bcoin version:
```
$ docker-compose build --pull bcoin
```

HTTPS
----
Includes optional nginx wrapper for https. Add domain certs to `secrets/certs/`.

Update docker-compose `VIRUAL_HOST` domain setting.

See https://github.com/jwilder/nginx-proxy for more options.

# Wallet HTTP
Note that Wallet and Node API servers are on separate ports.
With the default `docker-compose.yml` configuration, Wallet API is accessible via `bcoin.yourdomain.org:8334/wallet`, while node endpoints are accessed through default HTTP/HTTPS ports.

Provided is a simple example of an nginx proxy to allow wallet API to be accessible
on a separate domain, in order to make it unnecessary to specify wallet port.

See `docker-compose.wallet.yml`. (Not required to actually use wallet API)

# Building

By default, docker-compose will use image pulled from `purse/bcoin:latest`,
but you can build one yourself.

Latest is hard coded into Makefile and will need updates overtime,
but you can manually pass VERSION variable to override current version.

## Examples
Build v1.0.2:
- `make` - Same as build
- `make build` - Currently hard coded latest.
- `make latest` - this will tag image as latest.
- `VERSION=v1.0.2 make build`