Luke Childs
5 years ago
commit
8e970659b5
6 changed files with 136 additions and 0 deletions
@ -0,0 +1,7 @@ |
|||
sudo: required |
|||
services: |
|||
- docker |
|||
script: docker build -t vertcoind . && ( docker run vertcoind -version | tee /dev/stderr | grep -q $(cat VERSION) ) 2>&1 |
|||
notifications: |
|||
email: |
|||
on_success: never |
@ -0,0 +1,24 @@ |
|||
FROM debian:stable-slim |
|||
LABEL maintainer="Luke Childs <lukechilds123@gmail.com>" |
|||
|
|||
COPY ./bin /usr/local/bin |
|||
COPY ./VERSION /tmp |
|||
|
|||
RUN VERSION=`cat /tmp/VERSION` && \ |
|||
chmod a+x /usr/local/bin/* && \ |
|||
apt-get update && \ |
|||
apt-get install -y --no-install-recommends curl ca-certificates && \ |
|||
curl -L https://bitcoin.org/bin/bitcoin-core-${VERSION}/bitcoin-${VERSION}-x86_64-linux-gnu.tar.gz --output /tmp/prebuilt.tar.gz && \ |
|||
tar -zxvf /tmp/prebuilt.tar.gz -C /tmp && \ |
|||
mv /tmp/bitcoin-${VERSION}/bin/* /usr/local/bin/ && \ |
|||
apt-get purge -y curl ca-certificates && \ |
|||
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* |
|||
|
|||
VOLUME ["/data"] |
|||
ENV HOME /data |
|||
ENV DATA /data |
|||
WORKDIR /data |
|||
|
|||
EXPOSE 8332 8333 |
|||
|
|||
ENTRYPOINT ["init"] |
@ -0,0 +1,21 @@ |
|||
MIT License |
|||
|
|||
Copyright (c) 2017 Luke Childs |
|||
|
|||
Permission is hereby granted, free of charge, to any person obtaining a copy |
|||
of this software and associated documentation files (the "Software"), to deal |
|||
in the Software without restriction, including without limitation the rights |
|||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
|||
copies of the Software, and to permit persons to whom the Software is |
|||
furnished to do so, subject to the following conditions: |
|||
|
|||
The above copyright notice and this permission notice shall be included in all |
|||
copies or substantial portions of the Software. |
|||
|
|||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
|||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
|||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
|||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
|||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
|||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
|||
SOFTWARE. |
@ -0,0 +1,72 @@ |
|||
|
|||
# docker-bitcoind |
|||
|
|||
[![Build Status](https://travis-ci.org/lukechilds/docker-bitcoind.svg?branch=master)](https://travis-ci.org/lukechilds/docker-bitcoind) |
|||
[![Image Layers](https://images.microbadger.com/badges/image/lukechilds/bitcoind.svg)](https://microbadger.com/images/lukechilds/bitcoind) |
|||
[![Docker Pulls](https://img.shields.io/docker/pulls/lukechilds/bitcoind.svg)](https://hub.docker.com/r/lukechilds/bitcoind/) |
|||
|
|||
> Run a full Bitcoin node with one command |
|||
|
|||
A Docker configuration with sane defaults for running a full |
|||
Bitcoin node. |
|||
|
|||
## Usage |
|||
|
|||
``` |
|||
docker run -v /home/username/bitcoin:/data -p 8333:8333 lukechilds/bitcoind |
|||
``` |
|||
|
|||
If there's a `bitcoin.conf` in the `/data` volume it'll be used. If not, one will be created for you with a randomly generated JSON-RPC password. |
|||
|
|||
### JSON-RPC |
|||
|
|||
To access JSON-RPC you'll also need to expose port 8332. You probably only want this available to localhost: |
|||
|
|||
``` |
|||
docker run -v /home/username/bitcoin:/data -p 8333:8333 -p 127.0.0.1:8332:8332 lukechilds/bitcoind |
|||
``` |
|||
|
|||
### CLI Arguments |
|||
|
|||
All CLI arguments are passed directly through to bitcoind. |
|||
|
|||
You can use this to configure via CLI args without a config file: |
|||
|
|||
``` |
|||
docker run -v /home/username/bitcoin:/data \ |
|||
-p 8333:8333 \ |
|||
-p 127.0.0.1:8332:8332 \ |
|||
lukechilds/bitcoind -rpcuser=jonsnow -rpcpassword=ikn0wnothin |
|||
``` |
|||
|
|||
Or just use the container like a bitcoind binary: |
|||
|
|||
``` |
|||
$ docker run lukechilds/bitcoind -version |
|||
Bitcoin Core Daemon version v0.18.1 |
|||
Copyright (C) 2009-2019 The Bitcoin Core developers |
|||
|
|||
Please contribute if you find Bitcoin Core useful. Visit |
|||
<https://bitcoincore.org> for further information about the software. |
|||
The source code is available from <https://github.com/bitcoin/bitcoin>. |
|||
|
|||
This is experimental software. |
|||
Distributed under the MIT software license, see the accompanying file COPYING |
|||
or <https://opensource.org/licenses/MIT> |
|||
|
|||
This product includes software developed by the OpenSSL Project for use in the |
|||
OpenSSL Toolkit <https://www.openssl.org> and cryptographic software written by |
|||
Eric Young and UPnP software written by Thomas Bernard. |
|||
``` |
|||
|
|||
### Version |
|||
|
|||
You can also run a specific version of bitcoind if you want. |
|||
|
|||
``` |
|||
docker run -v /home/username/bitcoin:/data -p 8333:8333 lukechilds/bitcoind:v0.11.1.0 |
|||
``` |
|||
|
|||
## License |
|||
|
|||
MIT © Luke Childs |
@ -0,0 +1 @@ |
|||
0.18.1 |
@ -0,0 +1,11 @@ |
|||
#!/bin/bash |
|||
|
|||
CONF=${DATA}/bitcoin.conf |
|||
|
|||
if [ ! -e "${CONF}" ]; then |
|||
echo "disablewallet=1 |
|||
printtoconsole=1 |
|||
rpcallowip=::/0" > "${CONF}" |
|||
fi |
|||
|
|||
exec bitcoind -datadir=${DATA} -conf=${CONF} "$@" |
Loading…
Reference in new issue