diff --git a/.github/workflows/docker-latest.yml b/.github/workflows/docker-latest.yml index ee8f5e62..f01f25c2 100644 --- a/.github/workflows/docker-latest.yml +++ b/.github/workflows/docker-latest.yml @@ -35,8 +35,9 @@ jobs: with: context: . push: true + platforms: linux/amd64,linux/arm/v7 tags: | - shaarli/shaarli:latest - ghcr.io/shaarli/shaarli:latest + ${{ secrets.DOCKER_IMAGE }}:latest + ghcr.io/${{ secrets.DOCKER_IMAGE }}:latest - name: Image digest run: echo ${{ steps.docker_build.outputs.digest }} diff --git a/.github/workflows/docker-tags.yml b/.github/workflows/docker-tags.yml index 9d09d770..b9412f52 100644 --- a/.github/workflows/docker-tags.yml +++ b/.github/workflows/docker-tags.yml @@ -35,8 +35,9 @@ jobs: uses: docker/build-push-action@v3 with: push: true + platforms: linux/amd64,linux/arm/v7 tags: | - shaarli/shaarli:${{ env.REF }} - ghcr.io/shaarli/shaarli:${{ env.REF }} + ${{ secrets.DOCKER_IMAGE }}:${{ env.REF }} + ghcr.io/${{ secrets.DOCKER_IMAGE }}:${{ env.REF }} - name: Image digest run: echo ${{ steps.docker_build.outputs.digest }} diff --git a/Dockerfile.armhf b/Dockerfile.armhf deleted file mode 100644 index 6dfa87ec..00000000 --- a/Dockerfile.armhf +++ /dev/null @@ -1,79 +0,0 @@ -# Stage 1: -# - Copy Shaarli sources -# - Build documentation -FROM arm32v6/alpine:3.16 as docs -ADD . /usr/src/app/shaarli -RUN apk --update --no-cache add py3-pip \ - && cd /usr/src/app/shaarli \ - && pip install --no-cache-dir mkdocs \ - && mkdocs build --clean - -# Stage 2: -# - Resolve PHP dependencies with Composer -FROM arm32v6/alpine:3.16 as composer -COPY --from=docs /usr/src/app/shaarli /app/shaarli -RUN apk --update --no-cache add \ - php8-curl \ - php8-mbstring \ - php8-simplexml \ - composer \ - && cd /app/shaarli \ - && composer --prefer-dist --no-dev install - -# Stage 3: -# - Frontend dependencies -FROM arm32v6/alpine:3.16 as node -COPY --from=composer /app/shaarli /shaarli -RUN apk --update --no-cache add yarn nodejs-current python3 build-base \ - && cd /shaarli \ - && yarnpkg install \ - && yarnpkg run build \ - && rm -rf node_modules - -# Stage 4: -# - Shaarli image -FROM arm32v6/alpine:3.16 -LABEL maintainer="Shaarli Community" - -RUN apk --update --no-cache add \ - ca-certificates \ - nginx \ - php8 \ - php8-ctype \ - php8-curl \ - php8-fpm \ - php8-gd \ - php8-iconv \ - php8-intl \ - php8-json \ - php8-ldap \ - php8-mbstring \ - php8-openssl \ - php8-session \ - php8-xml \ - php8-zlib \ - s6 - -COPY .docker/nginx.conf /etc/nginx/nginx.conf -COPY .docker/php-fpm.conf /etc/php8/php-fpm.conf -COPY .docker/services.d /etc/services.d - -RUN rm -rf /etc/php8/php-fpm.d/www.conf \ - && sed -i 's/post_max_size.*/post_max_size = 10M/' /etc/php8/php.ini \ - && sed -i 's/upload_max_filesize.*/upload_max_filesize = 10M/' /etc/php8/php.ini - - -WORKDIR /var/www -COPY --from=node /shaarli /var/www/shaarli - -RUN chown -R nginx:nginx . \ - && ln -sf /dev/stdout /var/log/nginx/shaarli.access.log \ - && ln -sf /dev/stderr /var/log/nginx/shaarli.error.log - -VOLUME /var/www/shaarli/cache -VOLUME /var/www/shaarli/data - -EXPOSE 80 - -ENTRYPOINT ["/bin/s6-svscan", "/etc/services.d"] -CMD []