forked from ethereum/pyethapp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
55 lines (44 loc) · 1.25 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#
## Builds pyethapp from GitHub in a python 2.7.9 docker container.
## Note: base image, do not use in a production environment
##
## Build with:
#
# docker build -t pyethapp .
#
##
## Run with:
#
# docker run -p 30303:30303 -p 30303:30303/udp pyethapp
#
## Data volume
#
# To preserve data across container recreations mount a volume at /data e.g:
#
# docker run -v /somewhere/on/the/host:/data pyethapp
#
FROM python:2.7.9
RUN apt-get update
RUN apt-get install -y git-core
RUN git clone https://github.com/ethereum/pyrlp /apps/pyrlp
WORKDIR /apps/pyrlp
RUN pip install -e .
RUN git clone https://github.com/ethereum/pydevp2p /apps/pydevp2p
WORKDIR /apps/pydevp2p
RUN pip install -e .
RUN git clone https://github.com/ethereum/pyethereum /apps/pyethereum
WORKDIR /apps/pyethereum
RUN pip install -e .
RUN git clone https://github.com/ethereum/pyethapp /apps/pyethapp
WORKDIR /apps/pyethapp
RUN pip install -e .
# Fix debian's ridiculous gevent-breaking constant removal
# (e.g. https://github.com/hypothesis/h/issues/1704#issuecomment-63893295):
RUN sed -i 's/PROTOCOL_SSLv3/PROTOCOL_SSLv23/g' /usr/local/lib/python2.7/site-packages/gevent/ssl.py
RUN mkdir /data
EXPOSE 4000
EXPOSE 30303
EXPOSE 30303/udp
VOLUME /data
ENTRYPOINT ["pyethapp"]
CMD ["-d", "/data", "run"]