Dockerfile
This commit is contained in:
29
Docker/Dockerfile
Normal file
29
Docker/Dockerfile
Normal file
@@ -0,0 +1,29 @@
|
||||
# syntax=docker/dockerfile:3
|
||||
|
||||
FROM alpine:3.15
|
||||
|
||||
#SHELL ["/bin/ash", "-ex", "-c"]
|
||||
|
||||
ENV ELECTRUM_USER=api
|
||||
ENV ELECTRUM_PASSWORD=changeme
|
||||
|
||||
ENV HOME=/home/electrum
|
||||
#ENV TESTNET=false
|
||||
|
||||
EXPOSE 7000
|
||||
|
||||
RUN adduser -D -h $HOME electrum
|
||||
|
||||
RUN apk --no-cache add electrum
|
||||
|
||||
USER electrum
|
||||
WORKDIR $HOME
|
||||
|
||||
ENTRYPOINT test "$ELECTRUM_TESTNET" = 1 -o "$ELECTRUM_TESTNET" = true && FLAGS='--testnet' ;\
|
||||
electrum --offline $FLAGS setconfig rpcuser ${ELECTRUM_USER} ;\
|
||||
electrum --offline $FLAGS setconfig rpcpassword ${ELECTRUM_PASSWORD} ;\
|
||||
electrum --offline $FLAGS setconfig rpchost 0.0.0.0 ;\
|
||||
electrum --offline $FLAGS setconfig rpcport 7000 ;\
|
||||
#electrum --offline $FLAGS create ;\
|
||||
exec electrum $FLAGS daemon
|
||||
|
||||
47
README.md
Normal file
47
README.md
Normal file
@@ -0,0 +1,47 @@
|
||||
# Intro
|
||||
|
||||
[Electrum client](https://electrum.org/) is light bitcoin wallet software operates through supernodes (Electrum server instances actually).
|
||||
|
||||
Electrum client running as a daemon in docker container with JSON-RPC API enabled.
|
||||
|
||||
# Usage
|
||||
|
||||
Here are some example snippets to help you get started creating a container.
|
||||
|
||||
## docker-compose
|
||||
|
||||
```yaml
|
||||
version: "3"
|
||||
services:
|
||||
electrum:
|
||||
image: bitdeals/electrum
|
||||
environment:
|
||||
- ELECTRUM_TESTNET=0
|
||||
- ELECTRUM_API_USER=<username>
|
||||
- ELECTRUM_API_PASSWORD=<password>
|
||||
ports:
|
||||
- 7000:7000
|
||||
```
|
||||
|
||||
## docker cli
|
||||
|
||||
```sh
|
||||
docker run -d \
|
||||
-e ELECTRUM_TESTNET=0 \
|
||||
-e ELECTRUM_API_USER=api \
|
||||
-e ELECTRUM_API_PASSWORD=changeme \
|
||||
-p 127.0.0.1:7000:7000 \
|
||||
bitdeals/electrum
|
||||
```
|
||||
|
||||
# Parameters
|
||||
|
||||
Container images are configured using parameters passed at runtime.
|
||||
|
||||
|Parameter|Function|
|
||||
|:--------|:-------|
|
||||
|-p 7000|JSON-RPC API port TCP|
|
||||
|-e ELECTRUM_TESTNET=|Set 1 to enable bitcoin testnet mode. Default: `0`|
|
||||
|-e ELECTRUM_API_USER=|JSON-RPC API user. Default: `api`|
|
||||
|-e ELECTRUM_API_PASSWORD=|JSON-RPC API password. Default: `changeme`|
|
||||
|
||||
11
docker-compose.yml
Normal file
11
docker-compose.yml
Normal file
@@ -0,0 +1,11 @@
|
||||
version: '3.9'
|
||||
services:
|
||||
electrum:
|
||||
image: bitdeals/electrum:4.1.5-alpine
|
||||
environment:
|
||||
- ELECTRUM_API_USER=electrum_api_user
|
||||
- ELECTRUM_API_PASSWORD=electrum_api_password
|
||||
- ELECTRUM_TESTNET=1
|
||||
ports:
|
||||
- 7000:7000
|
||||
|
||||
24
electrum-appimage.service
Normal file
24
electrum-appimage.service
Normal file
@@ -0,0 +1,24 @@
|
||||
[Unit]
|
||||
Description=Electrum appimage service
|
||||
Documentation=https://electrum.readthedocs.io/en/latest/jsonrpc.html
|
||||
ConditionPathExists=/home/electrum/electrum.AppImage
|
||||
After=network.target
|
||||
Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStart=/home/electrum/electrum.AppImage daemon
|
||||
#ExecStartPost=/home/electrum/electrum.AppImage --testnet daemon load_wallet -w /home/electrum/.electrum/testnet/wallets/default_wallet
|
||||
WorkingDirectory=/home/electrum
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
|
||||
SyslogIdentifier=electrum
|
||||
User=electrum
|
||||
Group=electrum
|
||||
PrivateTmp=yes
|
||||
ProtectSystem=full
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
Reference in New Issue
Block a user