83 lines
2.7 KiB
Markdown
83 lines
2.7 KiB
Markdown
|
|
<img src="/docker/screenshots/Authorization.png" width="23%"></img> <img src="/docker/screenshots/Account_details.png" width="23%"></img> <img src="/docker/screenshots/Deal_information.png" width="23%"></img> <img src="/docker/screenshots/Create_deal.png" width="23%"></img>
|
|
|
|
# Intro
|
|
|
|
Deal Module (dm) - the Bitdeals daemon that provides a special interfaces for creating and modifying user accounts and deals.
|
|
|
|
# Running DM docker container
|
|
|
|
On first run the initialization script will create, if empty, a new bitcoin and PGP keys and start the daemon.
|
|
|
|
`docker run -i -t --rm --mount src=bitdeals-conf,dest=/etc/dm -p 127.0.0.1:4999:4999 -p 127.0.0.1:80:80 bitdeals/apostol-dm`
|
|
|
|
Daemon settings which may specified by an environment variables are saved to the daemon config files on the Docker Volume.
|
|
|
|
To use the BitDeals API you should register an user account on a BitDeals site and get a "client_id", "client_secret" at the account dashboard.
|
|
|
|
# Usage
|
|
|
|
Here are some example snippets to help you get started creating a container.
|
|
|
|
## docker-compose
|
|
|
|
```yaml
|
|
version: "3"
|
|
services:
|
|
bitdeals-module:
|
|
image: bitdeals/apostol-dm
|
|
environment:
|
|
- DM_TESTNET=0
|
|
- DM_BITCOIN=<address>
|
|
- DM_FEE=<0.1%>
|
|
- DM_PGP_PASSWORD=<password>
|
|
- DM_WEBAUTH=0
|
|
- DM_LC_ALL=en_US.UTF-8
|
|
- |
|
|
DM_PGP_SEC=
|
|
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
|
<key>
|
|
-----END PGP PRIVATE KEY BLOCK-----
|
|
|
|
volumes:
|
|
- dm:/etc/dm
|
|
ports:
|
|
- 4999:4999
|
|
- 80:80
|
|
```
|
|
|
|
## docker cli
|
|
|
|
```sh
|
|
docker run -d \
|
|
-e DM_TESTNET=0 \
|
|
-e DM_BITCOIN=<address> \
|
|
-e DM_FEE=0.1% \
|
|
-e DM_PGP_SEC="$(gpg2 --armor --export-secret-key Account_URL)" \
|
|
-e DM_PGP_PASSWORD=<pgp key password> \
|
|
-e DM_WEBAUTH=0 \
|
|
-e DM_LC_ALL=en_US.UTF-8 \
|
|
-p 127.0.0.1:4999:4999 \
|
|
-p 127.0.0.1:80:80 \
|
|
-v ./dm/:/etc/dm \
|
|
bitdeals/apostol-dm
|
|
```
|
|
|
|
# Parameters
|
|
|
|
Container images are configured using parameters passed at runtime.
|
|
|
|
|Parameter|Function|
|
|
|:--------|:-------|
|
|
|-p 80|WebUI port TCP|
|
|
|-p 4999|Module API port TCP [(API documentation)](https://bitbucket.org/bitdeals/apostol-dm)|
|
|
|-e DM_TESTNET=|Enable bitcoin testnet mode. Default: `0`|
|
|
|-e DM_BITCOIN=|User account bitcoin address. Will be created if empty.|
|
|
|-e DM_FEE=|User fee for created deals. You MUST indicate the sign "%" for a percentage of the deal amount or FIXED value in satoshi. Default: `0.1%`|
|
|
|-e DM_PGP_SEC=|Variable with ASCII armored PGP user secret key. Will be created if empty (with Account_URL in the key details).|
|
|
|-e DM_PGP_PASSWORD=|User PGP key password.|
|
|
|-e DM_WEBAUTH=|Enable web user interface authentication.|
|
|
|-e DM_LC_ALL=|Set Deal Module locale.|
|
|
|-e DM_ACCOUNT_URL=|Set Account_URL for a new account non-interactive registration. Format: http[s]://<host>[:<port>]|
|
|
|