2023-01-23 04:50:50 +00:00
|
|
|
# From: https://github.com/vyzo/gerbil/blob/master/docker/Dockerfile
|
|
|
|
FROM gerbil/ubuntu
|
|
|
|
|
|
|
|
# Install the Solidity compiler (latest stable version)
|
2023-01-23 15:00:24 +00:00
|
|
|
# and guile
|
|
|
|
# and libsecp256k1-dev
|
2023-01-23 05:12:05 +00:00
|
|
|
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive && export DEBCONF_NOWARNINGS="yes" && \
|
2023-01-23 04:50:50 +00:00
|
|
|
apt-get install -y software-properties-common && \
|
|
|
|
add-apt-repository ppa:ethereum/ethereum && \
|
2023-01-23 15:00:24 +00:00
|
|
|
apt-get update && \
|
|
|
|
apt-get install -y solc && \
|
|
|
|
apt-get install -y guile-3.0 && \
|
|
|
|
apt-get install -y libsecp256k1-dev && \
|
2023-01-23 05:12:05 +00:00
|
|
|
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
2023-01-23 04:50:50 +00:00
|
|
|
|
|
|
|
RUN mkdir /scripts
|
|
|
|
COPY install-dependencies.sh /scripts
|
|
|
|
|
2023-01-28 17:56:43 +00:00
|
|
|
# Override the definition of GERBIL_PATH in the base image, but
|
|
|
|
# is safe because (at present) no gerbil packages are installed in the base image
|
|
|
|
# We do this in order to allow a set of pre-installed packages from the container
|
|
|
|
# to be used with an arbitrary, potentially different set of projects bind mounted
|
|
|
|
# at /src
|
|
|
|
ENV GERBIL_PATH=/.gerbil
|
2023-01-23 04:50:50 +00:00
|
|
|
RUN bash /scripts/install-dependencies.sh
|
|
|
|
|
2023-01-23 05:12:05 +00:00
|
|
|
# Needed to prevent git from raging about /src
|
|
|
|
RUN git config --global --add safe.directory /src
|
|
|
|
|
|
|
|
COPY entrypoint.sh /scripts
|
|
|
|
ENTRYPOINT ["/scripts/entrypoint.sh"]
|