{"id":25207058,"url":"https://github.com/santteegt/poe-docker-multichain","last_synced_at":"2026-04-15T05:31:17.052Z","repository":{"id":75226479,"uuid":"146392633","full_name":"santteegt/poe-docker-multichain","owner":"santteegt","description":"Getting started with Multichain, API Web demo \u0026 Proof-of-Existence app demo","archived":false,"fork":false,"pushed_at":"2018-08-28T05:06:21.000Z","size":48,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-14T12:52:12.020Z","etag":null,"topics":["apache2","bootstrap","composer","docker-compose","jquery","multichain","php7"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/santteegt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-28T04:38:43.000Z","updated_at":"2019-05-08T14:37:28.000Z","dependencies_parsed_at":"2023-06-15T01:30:52.257Z","dependency_job_id":null,"html_url":"https://github.com/santteegt/poe-docker-multichain","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/santteegt/poe-docker-multichain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santteegt%2Fpoe-docker-multichain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santteegt%2Fpoe-docker-multichain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santteegt%2Fpoe-docker-multichain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santteegt%2Fpoe-docker-multichain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/santteegt","download_url":"https://codeload.github.com/santteegt/poe-docker-multichain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santteegt%2Fpoe-docker-multichain/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31828530,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T18:05:02.291Z","status":"online","status_checked_at":"2026-04-15T02:00:06.175Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apache2","bootstrap","composer","docker-compose","jquery","multichain","php7"],"created_at":"2025-02-10T11:30:36.829Z","updated_at":"2026-04-15T05:31:17.019Z","avatar_url":"https://github.com/santteegt.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Proof-of-Existence (PoE) \u0026 Docker-Multichain\n\nThis repository can be used as a boilerplate demo for faster deployment of Multichain nodes, with the aim to demonstrate its functionalities using app examples. Demo apps include [Multichain Web Demo](#multichain-web-demo) \u0026 [Proof-of-Existence on Blockchain](#proof-of-existence-on-blockchain-demo).\n\nTo clone the entire repository use the following command:\n\n```bash\n~$ git clone --recurse-submodules https://github.com/santteegt/poe-docker-multichain.git\n```\n\n## Images\n\nInstead of using published docker image Ids directly, original Dockerfiles were included in order to demonstrate how Multichain nodes are being setup. Images were forked from [https://github.com/santteegt/docker-multichain](https://github.com/santteegt/docker-multichain), but original repo is [https://github.com/Kunstmaan/docker-multichain](https://github.com/Kunstmaan/docker-multichain)\n\n* [kunstmaan/base-multichain](https://hub.docker.com/r/kunstmaan/base-multichain/): A base Ubuntu with the latest Multichain deamon installed\n* [kunstmaan/master-multichain](https://hub.docker.com/r/kunstmaan/master-multichain/): Based on the \"base\" image running a master node, creates a blockchain and runs it. *Important: only for development since any node can connect, anyone can administer and the RPC interface is open to all.*\n* [kunstmaan/node-multichain](https://hub.docker.com/r/kunstmaan/node-multichain/): Based on the same \"base\" image and connects to the master node\n* [kunstmaan/explorer-multichain](https://hub.docker.com/r/kunstmaan/explorer-multichain/): A node with the Multichain explorer installed\n\n## Running the cluster\n\nUse this [docker-compose.yml](https://github.com/Kunstmaan/docker-multichain/blob/master/docker-compose.yml) and run:\n\n```\nsudo docker-compose up\n```\n\n\n## Persisting your chain\n\nAdd a volume\n\n\u003csomewhere\u003e:/root/.multichain\n\n## Configuration\n\n### Masternode\n\nTo configure your chain, we use environment variables.\n\n#### Required\n\n* CHAINNAME: DockerChain\n* NETWORK_PORT: 7447       # also expose this port!\n* RPC_PORT: 8000           # also expose this port!\n* RPC_USER: multichainrpc\n* RPC_PASSWORD: 79pgKQusiH3VDVpyzsM6e3kRz6gWNctAwgJvymG3iiuz\n* RPC_ALLOW_IP: 0.0.0.0/0.0.0.0\n\n#### Optional\n\n* PARAM_\u003csomething descriptive\u003e='\u003cvariable\u003e|\u003cvalue\u003e' e.g: `PARAM_TARGET_BLOCK_SIZE='target-block-time|15'`\n\nThese variables can be set:\n\n```\n# Basic chain parameters\n\nchain-protocol = multichain             # Chain protocol: multichain (permissions, native assets) or bitcoin\nchain-is-testnet = false                # Content of the 'testnet' field of API responses, for compatibility.\ntarget-block-time = 15                  # Target time between blocks (transaction confirmation delay), seconds. (5 - 86400)\nmaximum-block-size = 1000000            # Maximum block size in bytes. (1000 - 1000000000)\n\n# Global permissions\n\nanyone-can-connect = false              # Anyone can connect, i.e. a publicly readable blockchain.\nanyone-can-send = false                 # Anyone can send, i.e. transaction signing not restricted by address.\nanyone-can-receive = false              # Anyone can receive, i.e. transaction outputs not restricted by address.\nanyone-can-issue = false                # Anyone can issue new native assets.\nanyone-can-mine = false                 # Anyone can mine blocks (confirm transactions).\nanyone-can-activate = false             # Anyone can grant or revoke connect, send and receive permissions.\nanyone-can-admin = false                # Anyone can grant or revoke all permissions.\nallow-p2sh-outputs = true               # Allow pay-to-scripthash (P2SH) scripts, often used for multisig.\nallow-multisig-outputs = true           # Allow bare multisignature scripts, rarely used but still supported.\n\n# Consensus requirements\n\nsetup-first-blocks = 60                 # Length of initial setup phase in blocks, in which mining-diversity,\n                                        # admin-consensus-* and mining-requires-peers are not applied. (1 - 31536000)\nmining-diversity = 0.3                  # Miners must wait \u003cmining-diversity\u003e*\u003cactive miners\u003e between blocks. (0 - 1)\nadmin-consensus-admin = 0.5             # \u003cadmin-consensus-admin\u003e*\u003cactive admins\u003e needed to change admin perms. (0 - 1)\nadmin-consensus-activate = 0.5          # \u003cadmin-consensus-activate\u003e*\u003cactive admins\u003e to change activate perms. (0 - 1)\nadmin-consensus-mine = 0.5              # \u003cadmin-consensus-mine\u003e*\u003cactive admins\u003e to change mining permissions. (0 - 1)\nadmin-consensus-issue = 0.0             # \u003cadmin-consensus-issue\u003e*\u003cactive admins\u003e to change issue permissions. (0 - 1)\nmining-requires-peers = true            # Default for whether nodes only mine blocks if connected to other nodes.\n\n# Native blockchain currency (likely not required)\n\ninitial-block-reward = 0                # Initial block mining reward in raw native currency units. (0 - 1000000000000000000)\nfirst-block-reward = -1                 # Different mining reward for first block only, ignored if negative. (-1 - 1000000000000000000)\nreward-halving-interval = 52560000      # Interval for halving of mining rewards, in blocks. (60 - 4294967295)\nreward-spendable-delay = 1              # Delay before mining reward can be spent, in blocks. (1 - 100000)\nminimum-per-output = 0                  # Minimum native currency per output (anti-dust), in raw units.\n                                        # If set to -1, this is calculated from minimum-relay-fee. (-1 - 1000000000)\nmaximum-per-output = 100000000000000    # Maximum native currency per output, in raw units. (0 - 1000000000000000000)\nminimum-relay-fee = 0                   # Minimum transaction fee, in raw units of native currency. (0 - 1000000000)\nnative-currency-multiple = 100000000    # Number of raw units of native currency per display unit. (0 - 1000000000)\n\n# Advanced mining parameters\n\nskip-pow-check = false                  # Skip checking whether block hashes demonstrate proof of work.\npow-minimum-bits = 16                   # Initial and minimum proof of work difficulty, in leading zero bits. (1 - 32)\ntarget-adjust-freq = 86400              # Interval between proof of work difficulty adjustments, in seconds. (3600 - 4294967295)\nallow-min-difficulty-blocks = false     # Allow lower difficulty blocks if none after 2*\u003ctarget-block-time\u003e.\n\n# Standard transaction definitions\n\nonly-accept-std-txs = true              # Only accept and relay transactions which qualify as 'standard'.\nmax-std-tx-size = 100000                # Maximum size of standard transactions, in bytes. (1024 - 10000000)\nmax-std-op-return-size = 4096           # Maximum size of OP_RETURN metadata in standard transactions, in bytes. (0 - 8388608)\nmax-std-op-drops-count = 5              # Maximum number of OP_DROPs per output in standard transactions. (0 - 100)\nmax-std-element-size = 600              # Maximum size of data elements in standard transactions, in bytes. (128 - 32768)\n```\n\n### Slavenode\n\nTo configure your chain, we use environment variables.\n\n#### Required\n\n* CHAINNAME: DockerChain\n* NETWORK_PORT: 7447       # also expose this port!\n* RPC_PORT: 8000           # also expose this port!\n* RPC_USER: multichainrpc\n* RPC_PASSWORD: 79pgKQusiH3VDVpyzsM6e3kRz6gWNctAwgJvymG3iiuz\n* RPC_ALLOW_IP: 0.0.0.0/0.0.0.0\n* MASTERNODE: masternode   # IP address of the master node, or a docker compose link. Don't forget the links section!\n\n### Multichain Web Demo\n\n[Multichain Web Demo](https://github.com/MultiChain/multichain-web-demo) is installed on the Masternode and is available at [http://localhost:8080/multichain-web-demo](http://localhost:8080/multichain-web-demo)\n\n### Proof-of-Existence on Blockchain Demo\n\n[Proof-of-Existence on Blockchain](https://github.com/santteegt/proof-of-existence-on-blockchain) is deployed in the [app](app/) container and is accessible through the URL [http://localhost:8180/poe/](http://localhost:8180/poe/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsantteegt%2Fpoe-docker-multichain","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsantteegt%2Fpoe-docker-multichain","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsantteegt%2Fpoe-docker-multichain/lists"}