mirror of
https://github.com/irungentoo/toxcore.git
synced 2024-03-22 13:30:51 +08:00
Remove Alpine Linux bootstrap daemon dockerfile.
We can add it back when there is a test for it. For now, we don't know whether it works and don't have tests to make sure it keeps working.
This commit is contained in:
parent
15d64221f1
commit
77e025fae4
|
@ -1,72 +0,0 @@
|
|||
# Tox network node
|
||||
FROM alpine:latest
|
||||
LABEL Description="This image is used to run Tox network node" Vendor="n/a" Version="0.0.0"
|
||||
|
||||
# Tox core code
|
||||
ADD https://github.com/TokTok/c-toxcore/archive/master.zip /tmp/tox/
|
||||
|
||||
WORKDIR /tmp/tox
|
||||
|
||||
RUN set -x && \
|
||||
# Disable root
|
||||
sed -i 's/^root::/root:!:/' /etc/shadow && \
|
||||
# Add tox user and group, create home directory
|
||||
addgroup -S tox-bootstrapd && \
|
||||
adduser -h /var/lib/tox-bootstrapd -g "Account to run Tox's DHT bootstrap daemon" -s /sbin/nologin -G tox-bootstrapd -S -D -H tox-bootstrapd && \
|
||||
install -d -o tox-bootstrapd -g tox-bootstrapd -m 700 /var/lib/tox-bootstrapd && \
|
||||
function su_wrapper () { su -s /bin/sh -c "$@" tox-bootstrapd; return $?; } && \
|
||||
# Install libs and build tools
|
||||
apk --no-cache add libsodium libconfig && \
|
||||
apk --no-cache add --virtual build-dependencies \
|
||||
autoconf \
|
||||
automake \
|
||||
curl \
|
||||
build-base \
|
||||
libtool \
|
||||
libconfig-dev \
|
||||
libsodium-dev \
|
||||
libvpx-dev \
|
||||
linux-headers \
|
||||
opus-dev \
|
||||
python3 \
|
||||
unzip && \
|
||||
# Unzip
|
||||
chown tox-bootstrapd:tox-bootstrapd /tmp/tox && \
|
||||
chmod 644 /tmp/tox/master.zip && \
|
||||
su_wrapper "unzip -tq master.zip" && \
|
||||
su_wrapper "unzip -aq master.zip" && \
|
||||
# Compile
|
||||
cd c-toxcore-master && \
|
||||
su_wrapper "./autogen.sh" && \
|
||||
su_wrapper "./configure --prefix=/usr --enable-daemon --disable-av" && \
|
||||
su_wrapper "make" && \
|
||||
# Run tests (they FAIL mostly if you don't have enough compute resources)
|
||||
# for i in $(seq 1 10); do echo "=== check attempt $i ==="; su_wrapper "make check"; ret=$?; echo "=== check returned $ret ==="; if [ $ret -eq 0 ]; then echo "=== check passed ==="; break; elif [ $i -eq 10 ]; then echo "=== too many failures, aborting ==="; exit 1; fi; done && \
|
||||
#
|
||||
# Install tox daemon and copy base network node configuration file
|
||||
make install && \
|
||||
install -o root -g root -m 644 other/bootstrap_daemon/tox-bootstrapd.conf /etc/tox-bootstrapd.conf && \
|
||||
# Remove all the example bootstrap nodes from the config file and add nodes to bootstrap from
|
||||
sed -i '/^bootstrap_nodes = /,$d' /etc/tox-bootstrapd.conf && \
|
||||
python3 other/bootstrap_daemon/docker/get-nodes.py >> /etc/tox-bootstrapd.conf && \
|
||||
# Clean build dependencies and build files
|
||||
cd / && \
|
||||
rm -rf /tmp/tox && \
|
||||
apk del build-dependencies && \
|
||||
# Tox network node daemon configuration
|
||||
# Disable LAN discovery, because we are on a server
|
||||
sed -i 's/enable_lan_discovery = true/enable_lan_discovery = false/' /etc/tox-bootstrapd.conf && \
|
||||
# MOTD
|
||||
sed -i 's/motd = "tox-bootstrapd"/motd = "tox-bootstrapd docker"/' /etc/tox-bootstrapd.conf
|
||||
|
||||
|
||||
# Tox daemon home directory
|
||||
WORKDIR /var/lib/tox-bootstrapd
|
||||
|
||||
# Ports
|
||||
EXPOSE 443/tcp 443/udp 3389/tcp 3389/udp 33445/tcp 33445/udp
|
||||
|
||||
# Run cmd
|
||||
#CMD ["/bin/sh"]
|
||||
USER tox-bootstrapd
|
||||
CMD ["/usr/bin/tox-bootstrapd", "--config=/etc/tox-bootstrapd.conf", "--foreground", "--log-backend=stdout"]
|
Loading…
Reference in New Issue
Block a user