mirror of https://github.com/SystemRage/py-kms.git
Added multiarch to minimal
This commit is contained in:
parent
84a9f573ff
commit
2093791844
|
@ -1,6 +1,6 @@
|
||||||
# This is a minimized version from docker/docker-py3-kms/Dockerfile without SQLite support to further reduce image size
|
# This is a minimized version from docker/docker-py3-kms/Dockerfile without SQLite support to further reduce image size
|
||||||
|
|
||||||
FROM alpine:3.8
|
FROM alpine:3.12
|
||||||
|
|
||||||
ENV IP 0.0.0.0
|
ENV IP 0.0.0.0
|
||||||
ENV PORT 1688
|
ENV PORT 1688
|
||||||
|
|
|
@ -0,0 +1,44 @@
|
||||||
|
# This is a minimized version from docker/docker-py3-kms/Dockerfile without SQLite support to further reduce image size
|
||||||
|
|
||||||
|
# Prepare the multiarch env
|
||||||
|
FROM alpine AS builder
|
||||||
|
RUN apk add curl && curl -L "https://github.com/balena-io/qemu/releases/download/v4.0.0%2Bbalena2/qemu-4.0.0.balena2-arm.tar.gz" | tar zxvf - -C . --strip-components 1
|
||||||
|
|
||||||
|
# Switch to the target image
|
||||||
|
FROM arm32v7/alpine:3.12
|
||||||
|
|
||||||
|
# Import qemu from the preparation
|
||||||
|
COPY --from=builder qemu-arm-static /usr/bin
|
||||||
|
|
||||||
|
ENV IP 0.0.0.0
|
||||||
|
ENV PORT 1688
|
||||||
|
ENV EPID ""
|
||||||
|
ENV LCID 1033
|
||||||
|
ENV CLIENT_COUNT 26
|
||||||
|
ENV ACTIVATION_INTERVAL 120
|
||||||
|
ENV RENEWAL_INTERVAL 10080
|
||||||
|
ENV HWID "RANDOM"
|
||||||
|
ENV LOGLEVEL INFO
|
||||||
|
ENV LOGFILE /var/log/pykms_logserver.log
|
||||||
|
ENV LOGSIZE ""
|
||||||
|
|
||||||
|
RUN apk add --no-cache --update \
|
||||||
|
bash \
|
||||||
|
git \
|
||||||
|
py3-argparse \
|
||||||
|
py3-flask \
|
||||||
|
py3-pygments \
|
||||||
|
python3-tkinter \
|
||||||
|
sqlite-libs \
|
||||||
|
py3-pip && \
|
||||||
|
pip3 install peewee tzlocal && \
|
||||||
|
git clone https://github.com/SystemRage/py-kms/ /tmp/py-kms && \
|
||||||
|
mv /tmp/py-kms/py-kms /home/ && \
|
||||||
|
rm -rf /tmp/py-kms && \
|
||||||
|
apk del git
|
||||||
|
|
||||||
|
WORKDIR /home/py-kms
|
||||||
|
|
||||||
|
EXPOSE ${PORT}/tcp
|
||||||
|
|
||||||
|
ENTRYPOINT /usr/bin/python3 pykms_Server.py ${IP} ${PORT} -l ${LCID} -c ${CLIENT_COUNT} -a ${ACTIVATION_INTERVAL} -r ${RENEWAL_INTERVAL} -w ${HWID} -V ${LOGLEVEL} -F ${LOGFILE}
|
|
@ -0,0 +1,44 @@
|
||||||
|
# This is a minimized version from docker/docker-py3-kms/Dockerfile without SQLite support to further reduce image size
|
||||||
|
|
||||||
|
# Prepare the multiarch env
|
||||||
|
FROM alpine AS builder
|
||||||
|
RUN apk add curl && curl -L "https://github.com/balena-io/qemu/releases/download/v4.0.0%2Bbalena2/qemu-4.0.0.balena2-aarch64.tar.gz" | tar zxvf - -C . --strip-components 1
|
||||||
|
|
||||||
|
# Switch to the target image
|
||||||
|
FROM arm64v8/alpine:3.12
|
||||||
|
|
||||||
|
# Import qemu from the preparation
|
||||||
|
COPY --from=builder qemu-aarch64-static /usr/bin
|
||||||
|
|
||||||
|
ENV IP 0.0.0.0
|
||||||
|
ENV PORT 1688
|
||||||
|
ENV EPID ""
|
||||||
|
ENV LCID 1033
|
||||||
|
ENV CLIENT_COUNT 26
|
||||||
|
ENV ACTIVATION_INTERVAL 120
|
||||||
|
ENV RENEWAL_INTERVAL 10080
|
||||||
|
ENV HWID "RANDOM"
|
||||||
|
ENV LOGLEVEL INFO
|
||||||
|
ENV LOGFILE /var/log/pykms_logserver.log
|
||||||
|
ENV LOGSIZE ""
|
||||||
|
|
||||||
|
RUN apk add --no-cache --update \
|
||||||
|
bash \
|
||||||
|
git \
|
||||||
|
py3-argparse \
|
||||||
|
py3-flask \
|
||||||
|
py3-pygments \
|
||||||
|
python3-tkinter \
|
||||||
|
sqlite-libs \
|
||||||
|
py3-pip && \
|
||||||
|
pip3 install peewee tzlocal && \
|
||||||
|
git clone https://github.com/SystemRage/py-kms/ /tmp/py-kms && \
|
||||||
|
mv /tmp/py-kms/py-kms /home/ && \
|
||||||
|
rm -rf /tmp/py-kms && \
|
||||||
|
apk del git
|
||||||
|
|
||||||
|
WORKDIR /home/py-kms
|
||||||
|
|
||||||
|
EXPOSE ${PORT}/tcp
|
||||||
|
|
||||||
|
ENTRYPOINT /usr/bin/python3 pykms_Server.py ${IP} ${PORT} -l ${LCID} -c ${CLIENT_COUNT} -a ${ACTIVATION_INTERVAL} -r ${RENEWAL_INTERVAL} -w ${HWID} -V ${LOGLEVEL} -F ${LOGFILE}
|
|
@ -0,0 +1,10 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Use manifest-tool to create the manifest, given the experimental
|
||||||
|
# "docker manifest" command isn't available yet on Docker Hub.
|
||||||
|
|
||||||
|
curl -Lo manifest-tool "https://github.com/estesp/manifest-tool/releases/download/v1.0.2/manifest-tool-linux-amd64"
|
||||||
|
chmod +x manifest-tool
|
||||||
|
|
||||||
|
./manifest-tool push from-spec multi-arch-manifest-latest.yaml
|
||||||
|
./manifest-tool push from-spec multi-arch-manifest-minimal.yaml
|
|
@ -0,0 +1,5 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Register qemu-*-static for all supported processors except the
|
||||||
|
# current one, but also remove all registered binfmt_misc before
|
||||||
|
docker run --rm --privileged multiarch/qemu-user-static:register --reset
|
|
@ -0,0 +1,16 @@
|
||||||
|
image: realsimonmicro/py-kms-multiarch:latest
|
||||||
|
manifests:
|
||||||
|
- image: realsimonmicro/py-kms-multiarch:minimal-amd64
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: linux
|
||||||
|
- image: realsimonmicro/py-kms-multiarch:minimal-arm32v7
|
||||||
|
platform:
|
||||||
|
architecture: arm
|
||||||
|
os: linux
|
||||||
|
variant: v7
|
||||||
|
- image: realsimonmicro/py-kms-multiarch:minimal-arm64v8
|
||||||
|
platform:
|
||||||
|
architecture: arm64
|
||||||
|
os: linux
|
||||||
|
variant: v8
|
|
@ -0,0 +1,16 @@
|
||||||
|
image: realsimonmicro/py-kms-multiarch:minimal
|
||||||
|
manifests:
|
||||||
|
- image: realsimonmicro/py-kms-multiarch:minimal-amd64
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: linux
|
||||||
|
- image: realsimonmicro/py-kms-multiarch:minimal-arm32v7
|
||||||
|
platform:
|
||||||
|
architecture: arm
|
||||||
|
os: linux
|
||||||
|
variant: v7
|
||||||
|
- image: realsimonmicro/py-kms-multiarch:minimal-arm64v8
|
||||||
|
platform:
|
||||||
|
architecture: arm64
|
||||||
|
os: linux
|
||||||
|
variant: v8
|
Loading…
Reference in New Issue