diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..c471638 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,53 @@ +name: "Build and push images" + +on: + workflow_dispatch: + +jobs: + Building: + runs-on: ubuntu-latest + name: "Build Netflix unlock images" + env: + DOCKER_BUILDKIT: 1 + DOCKER_CLI_EXPERIMENTAL: enabled + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} + DOCKERHUB_REPOSITORY: ${{ secrets.DOCKER_USERNAME }}/test:latest + + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Login to DockerHub + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Build and push images to Docker hub + run: | + + #export DOCKER_CLI_EXPERIMENTAL=enabled + + docker run --rm --privileged docker/binfmt:66f9012c56a8316f9244ffd7622d7c21c1f6f28d + + #docker login --username ${DOCKER_USERNAME} --password ${DOCKER_PASSWORD} + + docker buildx create --use --name mybuilder + + docker buildx inspect mybuilder --bootstrap + + docker buildx build --tag ${DOCKERHUB_REPOSITORY} --platform=linux/arm64,linux/amd64 . --push + + - name: Test container + run: | + docker run --rm -id \ + --name test \ + --sysctl net.ipv6.conf.all.disable_ipv6=0 \ + --privileged --cap-add net_admin \ + --cap-add sys_module \ + --log-opt max-size=1m \ + -v /lib/modules:/lib/modules \ + -v /etc/wireguard:/etc/wireguard \ + ${DOCKERHUB_REPOSITORY} + docker stop test