mirror of
https://github.com/basicswap/basicswap.git
synced 2024-11-16 15:58:17 +00:00
Simplify docker config.
This commit is contained in:
parent
8c9105ce01
commit
3bbb483a0a
8 changed files with 52 additions and 34 deletions
|
@ -1 +0,0 @@
|
|||
docker
|
20
Dockerfile
20
Dockerfile
|
@ -1,14 +1,11 @@
|
|||
FROM ubuntu:20.04
|
||||
|
||||
ARG WITH_COINS
|
||||
ARG WITHOUT_COINS
|
||||
|
||||
ENV LANG=C.UTF-8 \
|
||||
DEBIAN_FRONTEND=noninteractive \
|
||||
DATADIRS="/coindata"
|
||||
|
||||
RUN apt-get update; \
|
||||
apt-get install -y wget python3-pip gnupg unzip protobuf-compiler automake libtool pkg-config;
|
||||
apt-get install -y wget python3-pip gnupg unzip protobuf-compiler automake libtool pkg-config gosu;
|
||||
|
||||
RUN wget -O coincurve-anonswap.zip https://github.com/tecnovert/coincurve/archive/anonswap.zip && \
|
||||
unzip coincurve-anonswap.zip && \
|
||||
|
@ -21,18 +18,15 @@ RUN cd basicswap-master; \
|
|||
protoc -I=basicswap --python_out=basicswap basicswap/messages.proto; \
|
||||
pip3 install .;
|
||||
|
||||
# Download binaries, these will be part of the docker image
|
||||
RUN basicswap-prepare -datadir=/opt -preparebinonly ${WITH_COINS} ${WITHOUT_COINS}
|
||||
|
||||
RUN useradd -ms /bin/bash user && \
|
||||
mkdir /coindata && chown user -R /coindata
|
||||
|
||||
USER user
|
||||
WORKDIR /home/user
|
||||
RUN useradd -ms /bin/bash swap_user && \
|
||||
mkdir /coindata && chown swap_user -R /coindata
|
||||
|
||||
# Expose html port
|
||||
EXPOSE 12700
|
||||
|
||||
VOLUME /coindata
|
||||
|
||||
ENTRYPOINT ["basicswap-run", "-datadir=/coindata/basicswap"]
|
||||
COPY ./docker/entrypoint.sh /entrypoint.sh
|
||||
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
CMD ["basicswap-run", "-datadir=/coindata/basicswap"]
|
||||
|
|
|
@ -8,24 +8,22 @@
|
|||
"""
|
||||
Atomic Swap Client - Proof of Concept
|
||||
|
||||
sudo pip install python-gnupg
|
||||
|
||||
"""
|
||||
|
||||
import sys
|
||||
import os
|
||||
import sys
|
||||
import json
|
||||
import hashlib
|
||||
import mmap
|
||||
import stat
|
||||
import gnupg
|
||||
import hashlib
|
||||
import tarfile
|
||||
import zipfile
|
||||
import stat
|
||||
from urllib.request import urlretrieve
|
||||
import urllib.parse
|
||||
import logging
|
||||
import platform
|
||||
import urllib.parse
|
||||
from urllib.request import urlretrieve
|
||||
|
||||
import gnupg
|
||||
|
||||
import basicswap.config as cfg
|
||||
from basicswap.rpc import (
|
||||
|
@ -571,8 +569,8 @@ def main():
|
|||
'network_key': '7sW2UEcHXvuqEjkpE5mD584zRaQYs6WXYohue4jLFZPTvMSxwvgs',
|
||||
'network_pubkey': '035758c4a22d7dd59165db02a56156e790224361eb3191f02197addcb3bde903d2',
|
||||
'chainclients': withchainclients,
|
||||
'auto_reply_delay_min': 5, # Min delay before sending a response message
|
||||
'auto_reply_delay_max': 50, # Max delay before sending a response message
|
||||
'min_delay_event': 5, # Min delay in seconds before reacting to an event
|
||||
'max_delay_event': 50, # Max delay in seconds before reacting to an event
|
||||
'check_progress_seconds': 60,
|
||||
'check_watched_seconds': 60,
|
||||
'check_expired_seconds': 60
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Copyright (c) 2019 tecnovert
|
||||
# Copyright (c) 2019-2020 tecnovert
|
||||
# Distributed under the MIT software license, see the accompanying
|
||||
# file LICENSE or http://www.opensource.org/licenses/mit-license.php.
|
||||
|
||||
|
@ -10,14 +10,15 @@ Atomic Swap Client - Proof of Concept
|
|||
|
||||
"""
|
||||
|
||||
import sys
|
||||
import os
|
||||
import time
|
||||
import sys
|
||||
import json
|
||||
import traceback
|
||||
import time
|
||||
import signal
|
||||
import subprocess
|
||||
import logging
|
||||
import traceback
|
||||
import subprocess
|
||||
|
||||
|
||||
import basicswap.config as cfg
|
||||
from basicswap import __version__
|
||||
|
|
|
@ -1,7 +1,29 @@
|
|||
|
||||
# Docker Setup
|
||||
|
||||
## Build the images
|
||||
```
|
||||
$ docker-compose build
|
||||
```
|
||||
|
||||
## Prepare the binaries, coin dirs and settings
|
||||
```
|
||||
$ docker run -t --name swap_prepare -v /tmp/coindata:/coindata i_swapclient basicswap-prepare --datadir=/coindata --withcoins=monero --withoutcoins=litecoin
|
||||
```
|
||||
|
||||
Record the mnemonic from the output of the above command.
|
||||
|
||||
Remove swap_prepare container (and logs):
|
||||
```
|
||||
$ docker rm swap_prepare
|
||||
```
|
||||
|
||||
|
||||
# Running on windows 10
|
||||
|
||||
|
||||
Work in progress - doesn't work reliably.
|
||||
|
||||
Running on windows 10
|
||||
|
||||
Install the latest docker toolbox from:
|
||||
https://github.com/docker/toolbox/releases
|
|
@ -1,2 +1,2 @@
|
|||
HTML_PORT=127.0.0.1:12700:12700
|
||||
COINDATA_PATH=./coindata
|
||||
COINDATA_PATH=/var/data/basicswap
|
||||
|
|
|
@ -2,12 +2,10 @@ version: '3'
|
|||
services:
|
||||
|
||||
swapclient:
|
||||
image: i_swapclient
|
||||
stop_grace_period: 5m
|
||||
build:
|
||||
context: ../
|
||||
args:
|
||||
- WITH_COINS=--withcoins=monero
|
||||
- WITHOUT_COINS=--withoutcoins=litecoin
|
||||
volumes:
|
||||
- ${COINDATA_PATH}:/coindata
|
||||
ports:
|
||||
|
|
6
docker/entrypoint.sh
Executable file
6
docker/entrypoint.sh
Executable file
|
@ -0,0 +1,6 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
chown -R swap_user "$DATADIRS"
|
||||
exec gosu swap_user "$@"
|
||||
|
Loading…
Reference in a new issue