11# This container is to run indy-node.
22# This file is part of https://github.com/hyperledger/indy-node-container .
3- # Copyright 2021-2022 by all people listed in https://github.com/hyperledger/indy-node-container/blob/main/NOTICE , see
3+ # Copyright 2021-2025 by all people listed in https://github.com/hyperledger/indy-node-container/blob/main/NOTICE , see
44# https://github.com/hyperledger/indy-node-container/blob/main/LICENSE for the license information.
5- #
6- # version: 1.2+2022-02-24
75
86
9- FROM python:3.6-slim-bullseye as base
7+ FROM python:3.8-slim-bullseye
8+
9+
10+ ENV DEBIAN_FRONTEND=noninteractive
1011
1112# Install environment
1213RUN apt-get update -y && apt-get upgrade -y && apt-get install -y \
@@ -17,57 +18,45 @@ RUN apt-get update -y && apt-get upgrade -y && apt-get install -y \
1718 gnupg2 \
1819 && apt-get autoremove -y
1920
20- # get node 1.12.4 dependencies from Ubtuntu 16 + sovrin repos
2121RUN \
22- add-apt-repository "deb http://archive.ubuntu.com/ubuntu xenial universe" && \
23- add-apt-repository "deb http://archive.ubuntu.com/ubuntu xenial main" && \
24- add-apt-repository "deb http://archive.ubuntu.com/ubuntu xenial-security main" && \
25- apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CE7709D068DB5E88 40976EAF437D05B5 3B4FE6ACC0B21F32 && \
26- add-apt-repository "deb https://repo.sovrin.org/deb xenial stable"
27-
28-
29- RUN apt-get update -y && \
30- apt-get install -y --allow-downgrades \
31- # libssl1.0.0 \
32- # libsodium18 \
33- # libindy-crypto=0.4.5 \
34- # python3-indy-crypto=0.4.5 \
35- indy-node=1.12.6 \
36- # node depends on plenum
37- indy-plenum=1.12.6 \
38- #plenum dependencies
39- python3-ujson=1.33-1build1 \
40- python3-prompt-toolkit=0.57-1 \
41- python3-pygments=2.2.0 \
42- python3-rlp=0.5.1 \
43- python3-sha3=0.2.1 \
44- python3-leveldb=0~svn68-2build4 \
45- python3-sortedcontainers=1.5.7 \
46- python3-pip=8.1.1-2 \
47- python3-portalocker=0.5.7 \
22+ # Ubtuntu 16 + sovrin repos are needed for old plenum dependencies going back to libssl1.0.0
23+ add-apt-repository "deb http://archive.ubuntu.com/ubuntu xenial universe" \
24+ && add-apt-repository "deb http://archive.ubuntu.com/ubuntu xenial main" \
25+ && add-apt-repository "deb http://archive.ubuntu.com/ubuntu xenial-security main" \
26+ && apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CE7709D068DB5E88 40976EAF437D05B5 3B4FE6ACC0B21F32 \
27+ && add-apt-repository "deb https://repo.sovrin.org/deb xenial stable" \
28+ # Hyperledger Artifactory for latest indy-node
29+ && apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 9692C00E657DDE61 \
30+ && add-apt-repository "deb https://hyperledger.jfrog.io/artifactory/indy focal stable" \
31+ # Prioritize packages from hyperledger.jfrog.io
32+ # && printf '%s\n%s\n%s\n' 'Package: *' 'Pin: origin hyperledger.jfrog.io' 'Pin-Priority: 1001' >> /etc/apt/preferences \
33+ && apt-get update -y
34+
35+
36+ RUN apt-get install -y --allow-downgrades \
37+ indy-node=1.13.2 \
38+ indy-plenum=1.13.1 \
39+ ursa=0.3.2-1 \
4840 python3-libnacl=1.6.1 \
49- python3-six=1.11.0 \
50- python3-intervaltree=2.1.0 \
51- python3-msgpack=0.4.6-1build1 \
52- python3-rocksdb=0.6.9 \
53- python3-dateutil=2.6.1 \
54- # meta dependencies of those python packages
55- python3-setuptools=38.5.2 \
56- python-pip-whl=8.1.1-2 \
57- # plenum in particular depends on python 3.5
58- python3=3.5.1-3 \
59- python3-minimal=3.5.1-3 \
60- libpython3-stdlib=3.5.1-3 \
61- dh-python=2.20151103ubuntu1.2 \
62- python3-distro=1.3.0 \
63- python3-base58=1.0.0 \
64- python3-psutil=5.4.3 \
65- python3-packaging=19.0 \
66- python3-jsonpickle=0.9.6 \
67- python3-semver=2.7.9 \
68- python3-pympler=0.5 \
69- #
70- && apt-get autoremove -y
41+ python3-pympler=0.8 \
42+ python3-sortedcontainers=1.5.7 \
43+ python3-ujson=1.33 \
44+ && apt-get autoremove -y \
45+ && apt-get clean
46+
47+ RUN rm -rf /var/lib/apt/lists/*
48+
49+ ENV PYTHONPATH="/usr/local/lib/python3.8:/usr/local/lib/python3.8/dist-packages/:/usr/local/lib/python3.5/dist-packages/:/usr/local/lib/python3.9/dist-packages/"
50+
51+
52+ # use python 3.8
53+ RUN rm /usr/bin/python3 && ln -s /usr/local/bin/python3 /usr/bin/python3
54+
55+ # find lib ursa
56+ RUN ln -s /usr/lib/ursa/libursa.so /usr/lib/libursa.so
57+
58+ # missing python packages
59+ RUN pip install zipp six rocksdb
7160
7261
7362WORKDIR /home/indy
0 commit comments