Browse Source

Merge docker update PR

Adam Ierymenko 6 years ago
parent
commit
5da7d6d1ae

+ 20 - 16
ext/installfiles/linux/zerotier-containerized/Dockerfile

@@ -1,26 +1,30 @@
-FROM alpine:latest as builder
-MAINTAINER Adam Ierymenko <[email protected]>
+FROM debian:stretch as builder
+
+## Supports x86_64, x86, arm, and arm64
+
+RUN apt-get update && apt-get install -y curl gnupg
+RUN apt-key adv --keyserver ha.pool.sks-keyservers.net --recv-keys 0x1657198823e52a61  && \
+    echo "deb http://download.zerotier.com/debian/stretch stretch main" > /etc/apt/sources.list.d/zerotier.list
+RUN apt-get update && apt-get install -y zerotier-one=1.2.12
 
-ARG VERSION=1.2.12
-LABEL version=$VERSION
-LABEL description="Containerized ZeroTier One"
+FROM alpine:latest
+MAINTAINER Adam Ierymenko <[email protected]>
 
-RUN apk add --update alpine-sdk linux-headers
-RUN git clone https://github.com/zerotier/ZeroTierOne.git
-WORKDIR ZeroTierOne
-RUN git checkout $VERSION
-RUN make
+LABEL version="1.2.12"
+LABEL description="Containerized ZeroTier One for use on CoreOS or other Docker-only Linux hosts."
 
-FROM alpine:latest as final
+# Uncomment to build in container
+#RUN apk add --update alpine-sdk linux-headers
 
 RUN apk add --update libgcc libstdc++
 
-COPY --from=builder /ZeroTierOne/zerotier-one /
-RUN chmod 0755 /zerotier-one
-RUN ln -sf /zerotier-one /zerotier-cli
 RUN mkdir -p /var/lib/zerotier-one
 
+COPY --from=builder /var/lib/zerotier-one/zerotier-cli /usr/sbin/zerotier-cli
+COPY --from=builder /var/lib/zerotier-one/zerotier-idtool /usr/sbin/zerotier-idtool
+COPY --from=builder /usr/sbin/zerotier-one /usr/sbin/zerotier-one
+
 ADD main.sh /
 RUN chmod 0755 /main.sh
-
-ENTRYPOINT /main.sh
+ENTRYPOINT ["/main.sh"]
+CMD ["zerotier-one"]

+ 1 - 1
ext/installfiles/linux/zerotier-containerized/main.sh

@@ -7,4 +7,4 @@ if [ ! -e /dev/net/tun ]; then
 	exit 1
 fi
 
-exec /zerotier-one
+exec "$@"

+ 1 - 1
service/README.md

@@ -31,7 +31,7 @@ Settings available in `local.conf` (this is not valid JSON, and JSON does not al
 		"softwareUpdateChannel": "release"|"beta", /* Software update channel */
 		"softwareUpdateDist": true|false, /* If true, distribute software updates (only really useful to ZeroTier, Inc. itself, default is false) */
 		"interfacePrefixBlacklist": [ "XXX",... ], /* Array of interface name prefixes (e.g. eth for eth#) to blacklist for ZT traffic */
-		"allowManagementFrom": "NETWORK/bits"|null, /* If non-NULL, allow JSON/HTTP management from this IP network. Default is 127.0.0.1 only. */
+		"allowManagementFrom": [ "NETWORK/bits", ...] |null, /* If non-NULL, allow JSON/HTTP management from this IP network. Default is 127.0.0.1 only. */
 		"bind": [ "ip",... ], /* If present and non-null, bind to these IPs instead of to each interface (wildcard IP allowed) */
 		"allowTcpFallbackRelay": true|false /* Allow or disallow establishment of TCP relay connections (true by default) */
 	}