Dockerfile.aarch64/armhf update the crossbuild method

This commit is contained in:
David Personette 2019-09-03 08:46:45 -04:00
parent 5a4c03cfde
commit df894f716b
4 changed files with 32 additions and 6 deletions

View File

@ -1,8 +1,8 @@
FROM balenalib/aarch64-alpine FROM arm64v8/alpine
COPY qemu-aarch64-static /usr/bin/
MAINTAINER David Personette <dperson@gmail.com> MAINTAINER David Personette <dperson@gmail.com>
# Install samba # Install samba
RUN ["cross-build-start"]
RUN apk --no-cache --no-progress upgrade && \ RUN apk --no-cache --no-progress upgrade && \
apk --no-cache --no-progress add bash samba shadow tini && \ apk --no-cache --no-progress add bash samba shadow tini && \
addgroup -S smb && \ addgroup -S smb && \
@ -57,9 +57,10 @@ RUN apk --no-cache --no-progress upgrade && \
echo ' fruit:advertise_fullsync = true' >>$file && \ echo ' fruit:advertise_fullsync = true' >>$file && \
echo ' fruit:time machine = yes' >>$file && \ echo ' fruit:time machine = yes' >>$file && \
echo ' smb2 leases = yes' >>$file && \ echo ' smb2 leases = yes' >>$file && \
echo ' aio read size = 0' >>$file && \
echo ' aio write size = 0' >>$file && \
echo '' >>$file && \ echo '' >>$file && \
rm -rf /tmp/* rm -rf /tmp/*
RUN ["cross-build-end"]
COPY samba.sh /usr/bin/ COPY samba.sh /usr/bin/

View File

@ -1,8 +1,8 @@
FROM balenalib/armv7hf-alpine FROM arm32v6/alpine
COPY qemu-arm-static /usr/bin/
MAINTAINER David Personette <dperson@gmail.com> MAINTAINER David Personette <dperson@gmail.com>
# Install samba # Install samba
RUN ["cross-build-start"]
RUN apk --no-cache --no-progress upgrade && \ RUN apk --no-cache --no-progress upgrade && \
apk --no-cache --no-progress add bash samba shadow tini && \ apk --no-cache --no-progress add bash samba shadow tini && \
addgroup -S smb && \ addgroup -S smb && \
@ -57,9 +57,10 @@ RUN apk --no-cache --no-progress upgrade && \
echo ' fruit:advertise_fullsync = true' >>$file && \ echo ' fruit:advertise_fullsync = true' >>$file && \
echo ' fruit:time machine = yes' >>$file && \ echo ' fruit:time machine = yes' >>$file && \
echo ' smb2 leases = yes' >>$file && \ echo ' smb2 leases = yes' >>$file && \
echo ' aio read size = 0' >>$file && \
echo ' aio write size = 0' >>$file && \
echo '' >>$file && \ echo '' >>$file && \
rm -rf /tmp/* rm -rf /tmp/*
RUN ["cross-build-end"]
COPY samba.sh /usr/bin/ COPY samba.sh /usr/bin/

16
hooks/post_checkout Normal file
View File

@ -0,0 +1,16 @@
#!/usr/bin/env bash
BUILD_ARCH=$(echo "${DOCKERFILE_PATH}" | cut -d '.' -f2)
[ "${BUILD_ARCH}" == "Dockerfile" ] && \
{ echo 'qemu-user-static: Download not required for this arch'; exit 0; }
TAGS_API="https://api.github.com/repos/multiarch/qemu-user-static/tags"
URL="https://github.com/multiarch/qemu-user-static/releases/download"
LATEST_TAG=$(curl -LSs $TAGS_API \
| awk -F'"' '/name.*v[0-9]/ {print $4; exit}')
STATIC_ARCH=$([ "${BUILD_ARCH}" == "armhf" ] && \
echo "${BUILD_ARCH::-2}" || echo "${BUILD_ARCH}")
curl -LSs "${URL}/${LATEST_TAG}/x86_64_qemu-${STATIC_ARCH}-static.tar.gz" \
| tar xzv

8
hooks/pre_build Normal file
View File

@ -0,0 +1,8 @@
#!/usr/bin/env bash
BUILD_ARCH=$(echo "${DOCKERFILE_PATH}" | cut -d '.' -f2)
[ "${BUILD_ARCH}" == "Dockerfile" ] && \
{ echo 'qemu-user-static: Registration not required for this arch';exit 0; }
docker run --rm --privileged multiarch/qemu-user-static:register --reset