mirror of
https://github.com/Py-KMS-Organization/py-kms.git
synced 2025-05-13 14:44:50 -04:00
Added initial github config
This commit is contained in:
parent
0f0468f816
commit
b170ce60b2
17 changed files with 44 additions and 372 deletions
43
.github/workflows/main.yml
vendored
Normal file
43
.github/workflows/main.yml
vendored
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
name: Build Image On Release
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
bake:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2.3.4
|
||||||
|
- name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v1
|
||||||
|
with:
|
||||||
|
platforms: all
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v1.6.0
|
||||||
|
- name: Login to DockerHub
|
||||||
|
uses: docker/login-action@v1.10.0
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.DOCKER_USERNAME }}
|
||||||
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||||
|
- name: Build
|
||||||
|
uses: docker/build-push-action@v2
|
||||||
|
with:
|
||||||
|
context: ./docker/docker-py3-kms/
|
||||||
|
file: ./docker/docker-py3-kms/Dockerfile
|
||||||
|
platforms: linux/amd64,linux/386,linux/arm64/v8,linux/arm/v7,linux/arm/v6
|
||||||
|
push: true
|
||||||
|
tags: latest
|
||||||
|
- name: Build
|
||||||
|
uses: docker/build-push-action@v2
|
||||||
|
with:
|
||||||
|
context: ./docker/docker-py3-kms-minimal/
|
||||||
|
file: ./docker/docker-py3-kms-minimal/Dockerfile
|
||||||
|
platforms: linux/amd64,linux/386,linux/arm64/v8,linux/arm/v7,linux/arm/v6
|
||||||
|
push: true
|
||||||
|
tags: minimal
|
|
@ -1,44 +0,0 @@
|
||||||
# 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 arm32v6/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}
|
|
|
@ -1,44 +0,0 @@
|
||||||
# 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}
|
|
|
@ -1,44 +0,0 @@
|
||||||
# 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}
|
|
|
@ -1,10 +0,0 @@
|
||||||
#!/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
|
|
|
@ -1,5 +0,0 @@
|
||||||
#!/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
|
|
|
@ -1,21 +0,0 @@
|
||||||
image: pykmsorg/py-kms:latest
|
|
||||||
manifests:
|
|
||||||
- image: pykmsorg/py-kms:minimal-amd64
|
|
||||||
platform:
|
|
||||||
architecture: amd64
|
|
||||||
os: linux
|
|
||||||
- image: pykmsorg/py-kms:minimal-arm32v6
|
|
||||||
platform:
|
|
||||||
architecture: arm
|
|
||||||
os: linux
|
|
||||||
variant: v6
|
|
||||||
- image: pykmsorg/py-kms:minimal-arm32v7
|
|
||||||
platform:
|
|
||||||
architecture: arm
|
|
||||||
os: linux
|
|
||||||
variant: v7
|
|
||||||
- image: pykmsorg/py-kms:minimal-arm64v8
|
|
||||||
platform:
|
|
||||||
architecture: arm64
|
|
||||||
os: linux
|
|
||||||
variant: v8
|
|
|
@ -1,21 +0,0 @@
|
||||||
image: pykmsorg/py-kms:minimal
|
|
||||||
manifests:
|
|
||||||
- image: pykmsorg/py-kms:minimal-amd64
|
|
||||||
platform:
|
|
||||||
architecture: amd64
|
|
||||||
os: linux
|
|
||||||
- image: pykmsorg/py-kms:minimal-arm32v6
|
|
||||||
platform:
|
|
||||||
architecture: arm
|
|
||||||
os: linux
|
|
||||||
variant: v6
|
|
||||||
- image: pykmsorg/py-kms:minimal-arm32v7
|
|
||||||
platform:
|
|
||||||
architecture: arm
|
|
||||||
os: linux
|
|
||||||
variant: v7
|
|
||||||
- image: pykmsorg/py-kms:minimal-arm64v8
|
|
||||||
platform:
|
|
||||||
architecture: arm64
|
|
||||||
os: linux
|
|
||||||
variant: v8
|
|
|
@ -1,49 +0,0 @@
|
||||||
# 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 arm32v6/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 SQLITE false
|
|
||||||
ENV HWID "364F463A8863D35F"
|
|
||||||
ENV LOGLEVEL ERROR
|
|
||||||
ENV LOGFILE /var/log/pykms_logserver.log
|
|
||||||
ENV LOGSIZE ""
|
|
||||||
|
|
||||||
COPY start.sh /usr/bin/start.sh
|
|
||||||
|
|
||||||
RUN apk add --no-cache --update \
|
|
||||||
bash \
|
|
||||||
git \
|
|
||||||
py3-argparse \
|
|
||||||
py3-flask \
|
|
||||||
py3-pygments \
|
|
||||||
python3-tkinter \
|
|
||||||
sqlite-libs \
|
|
||||||
py3-pip && \
|
|
||||||
git clone https://github.com/SystemRage/py-kms.git /tmp/py-kms && \
|
|
||||||
git clone https://github.com/coleifer/sqlite-web.git /tmp/sqlite_web && \
|
|
||||||
mv /tmp/py-kms/py-kms /home/ && \
|
|
||||||
mv /tmp/sqlite_web/sqlite_web /home/ && \
|
|
||||||
rm -rf /tmp/py-kms && \
|
|
||||||
rm -rf /tmp/sqlite_web && \
|
|
||||||
pip3 install peewee tzlocal pysqlite3 && \
|
|
||||||
chmod a+x /usr/bin/start.sh && \
|
|
||||||
apk del git
|
|
||||||
|
|
||||||
WORKDIR /home/py-kms
|
|
||||||
|
|
||||||
EXPOSE ${PORT}/tcp
|
|
||||||
|
|
||||||
ENTRYPOINT ["/usr/bin/start.sh"]
|
|
|
@ -1,49 +0,0 @@
|
||||||
# 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 SQLITE false
|
|
||||||
ENV HWID "364F463A8863D35F"
|
|
||||||
ENV LOGLEVEL ERROR
|
|
||||||
ENV LOGFILE /var/log/pykms_logserver.log
|
|
||||||
ENV LOGSIZE ""
|
|
||||||
|
|
||||||
COPY start.sh /usr/bin/start.sh
|
|
||||||
|
|
||||||
RUN apk add --no-cache --update \
|
|
||||||
bash \
|
|
||||||
git \
|
|
||||||
py3-argparse \
|
|
||||||
py3-flask \
|
|
||||||
py3-pygments \
|
|
||||||
python3-tkinter \
|
|
||||||
sqlite-libs \
|
|
||||||
py3-pip && \
|
|
||||||
git clone https://github.com/SystemRage/py-kms.git /tmp/py-kms && \
|
|
||||||
git clone https://github.com/coleifer/sqlite-web.git /tmp/sqlite_web && \
|
|
||||||
mv /tmp/py-kms/py-kms /home/ && \
|
|
||||||
mv /tmp/sqlite_web/sqlite_web /home/ && \
|
|
||||||
rm -rf /tmp/py-kms && \
|
|
||||||
rm -rf /tmp/sqlite_web && \
|
|
||||||
pip3 install peewee tzlocal pysqlite3 && \
|
|
||||||
chmod a+x /usr/bin/start.sh && \
|
|
||||||
apk del git
|
|
||||||
|
|
||||||
WORKDIR /home/py-kms
|
|
||||||
|
|
||||||
EXPOSE ${PORT}/tcp
|
|
||||||
|
|
||||||
ENTRYPOINT ["/usr/bin/start.sh"]
|
|
|
@ -1,49 +0,0 @@
|
||||||
# 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 SQLITE false
|
|
||||||
ENV HWID "364F463A8863D35F"
|
|
||||||
ENV LOGLEVEL ERROR
|
|
||||||
ENV LOGFILE /var/log/pykms_logserver.log
|
|
||||||
ENV LOGSIZE ""
|
|
||||||
|
|
||||||
COPY start.sh /usr/bin/start.sh
|
|
||||||
|
|
||||||
RUN apk add --no-cache --update \
|
|
||||||
bash \
|
|
||||||
git \
|
|
||||||
py3-argparse \
|
|
||||||
py3-flask \
|
|
||||||
py3-pygments \
|
|
||||||
python3-tkinter \
|
|
||||||
sqlite-libs \
|
|
||||||
py3-pip && \
|
|
||||||
git clone https://github.com/SystemRage/py-kms.git /tmp/py-kms && \
|
|
||||||
git clone https://github.com/coleifer/sqlite-web.git /tmp/sqlite_web && \
|
|
||||||
mv /tmp/py-kms/py-kms /home/ && \
|
|
||||||
mv /tmp/sqlite_web/sqlite_web /home/ && \
|
|
||||||
rm -rf /tmp/py-kms && \
|
|
||||||
rm -rf /tmp/sqlite_web && \
|
|
||||||
pip3 install peewee tzlocal pysqlite3 && \
|
|
||||||
chmod a+x /usr/bin/start.sh && \
|
|
||||||
apk del git
|
|
||||||
|
|
||||||
WORKDIR /home/py-kms
|
|
||||||
|
|
||||||
EXPOSE ${PORT}/tcp
|
|
||||||
|
|
||||||
ENTRYPOINT ["/usr/bin/start.sh"]
|
|
|
@ -1 +1 @@
|
||||||
docker build -t pykms/pykms:py3-kms . --file Dockerfile.amd64
|
docker build -t pykms/pykms:py3-kms . --file Dockerfile
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
#!/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-python3.yaml
|
|
|
@ -1,5 +0,0 @@
|
||||||
#!/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
|
|
|
@ -1,21 +0,0 @@
|
||||||
image: pykmsorg/py-kms:python3
|
|
||||||
manifests:
|
|
||||||
- image: pykmsorg/py-kms:python3-amd64
|
|
||||||
platform:
|
|
||||||
architecture: amd64
|
|
||||||
os: linux
|
|
||||||
- image: pykmsorg/py-kms:python3-arm32v6
|
|
||||||
platform:
|
|
||||||
architecture: arm
|
|
||||||
os: linux
|
|
||||||
variant: v6
|
|
||||||
- image: pykmsorg/py-kms:python3-arm32v7
|
|
||||||
platform:
|
|
||||||
architecture: arm
|
|
||||||
os: linux
|
|
||||||
variant: v7
|
|
||||||
- image: pykmsorg/py-kms:python3-arm64v8
|
|
||||||
platform:
|
|
||||||
architecture: arm64
|
|
||||||
os: linux
|
|
||||||
variant: v8
|
|
Loading…
Add table
Add a link
Reference in a new issue