FROM alpine:latest

#SHELL ["/bin/ash", "-ex", "-c"]

LABEL name="Electrum client"
LABEL project="electrum"

EXPOSE 7000

ENV USER_UID=2000
ENV USER_GID=2000
ENV HOME=/home/electrum

ENV ELECTRUM_API_USER=electrum_api_user
ENV ELECTRUM_API_PASSWORD=electrum_api_password

RUN addgroup -g $USER_GID electrum ;\
	adduser -D -h $HOME -u $USER_UID -G electrum electrum

RUN apk --no-cache add electrum

USER electrum
WORKDIR $HOME

CMD test "$ELECTRUM_TESTNET" = 1 -o "$ELECTRUM_TESTNET" = true && FLAGS='--testnet' ;\
		electrum --offline $FLAGS setconfig rpcuser ${ELECTRUM_API_USER} 2>/dev/null ;\
		electrum --offline $FLAGS setconfig rpcpassword ${ELECTRUM_API_PASSWORD} 2>/dev/null ;\
		electrum --offline $FLAGS setconfig rpchost 0.0.0.0 2>/dev/null ;\
		electrum --offline $FLAGS setconfig rpcport 7000 2>/dev/null ;\
		#electrum --offline $FLAGS create ;\
		exec electrum $FLAGS daemon

HEALTHCHECK --retries=0 --interval=30s \
  CMD { electrum getinfo ; electrum --testnet getinfo ;} | grep '"connected": true'

