-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add Dockerfile based on Ubuntu 16.04
The official Dockerfile on alpine:3.11 doesn't work on Raspberypi OS (RPI4), this works fine
- Loading branch information
Showing
1 changed file
with
47 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
FROM ubuntu:20.04 | ||
|
||
#Timezone settings | ||
ENV TZ=Europe/Uzhgorod | ||
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone | ||
|
||
#Install dependencies | ||
RUN apt update \ | ||
&& apt install -y python3-pip tor openssl \ | ||
gcc libffi-dev musl-dev make \ | ||
pkg-config | ||
|
||
#Setup Tor | ||
RUN echo "ControlPort 9051" >> /etc/tor/torrc \ | ||
&& echo "CookieAuthentication 1" >> /etc/tor/torrc | ||
|
||
# Set up a non-root user | ||
RUN useradd --uid 1000 --shell /bin/bash --create-home znuser | ||
WORKDIR /home/znuser | ||
|
||
#Add Zeronet source | ||
COPY . . | ||
VOLUME /home/znuser/data | ||
RUN chown znuser:znuser -R data | ||
|
||
USER znuser | ||
ENV PATH="/home/znuser/.local/bin:${PATH}" | ||
|
||
RUN pip3 install virtualenv \ | ||
&& virtualenv zeroenv \ | ||
&& . zeroenv/bin/activate \ | ||
&& pip3 install -r requirements.txt | ||
|
||
RUN . zeroenv/bin/activate \ | ||
&& python3 -V \ | ||
&& python3 -m pip list \ | ||
&& tor --version \ | ||
&& openssl version | ||
|
||
#Control if Tor proxy is started | ||
ENV ENABLE_TOR false | ||
|
||
#Set upstart command | ||
CMD (! ${ENABLE_TOR} || tor&) && . zeroenv/bin/activate && python3 zeronet.py --ui_ip 0.0.0.0 --fileserver_port 26552 | ||
|
||
#Expose ports | ||
EXPOSE 43110 26552 |