Docker撰写比特币服务

时间:2018-07-20 23:55:32

标签: docker docker-compose bitcoin bitcoind

我有一个简单的python服务,可将单个命令发送到正在运行的比特币服务器。当我运行本地比特币守护程序时,一切正常。但是,当我尝试使用Docker运行此服务时,无法将此服务连接到另一个docker映像中的比特币服务器,例如docker-compose

version: '3'
services:
  my_service:
    build: .
    volumes:
      - .:/app
    depends_on:
      - bitcoind
    links:
      - bitcoind
    working_dir: /app

  bitcoind:
    image: ruimarinho/bitcoin-core:0.15.0.1-alpine
    command:
      -printtoconsole
      -regtest=1
      -rest
      -rpcallowip=10.211.0.0/16
      -rpcallowip=172.17.0.0/16
      -rpcallowip=192.168.0.0/16
      -rpcpassword=bar
      -rpcport=18333
      -rpcuser=foo
      -server
    ports:
      - 18333:18333

volumes:
  bitcoin_data:

我一直收到以下错误:

ConnectionError: HTTPConnectionPool(host='bitcoind', port=18333): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7faded979310>: Failed to establish a new connection: [Errno -2] Name or service not known',))

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您必须打开容器端口18333。使用docker compose,您可以使用命令“ expose”来执行此操作。