mirror of
https://github.com/bensuperpc/dockcross.git
synced 2025-04-06 05:49:16 +02:00
Merge pull request #751 from pbosetti/local
Support for building images locally
This commit is contained in:
commit
6afd127234
CONTRIBUTING.mdMakefileREADME.md
android-arm
android-arm64
bare-armv7emhf-nano_newlib
linux-arm64-full
linux-arm64-lts
linux-arm64-musl
linux-arm64
linux-armv5-musl
linux-armv5-uclibc
linux-armv5
linux-armv6-lts
linux-armv6-musl
linux-armv6
linux-armv7-lts
linux-armv7
linux-armv7a-lts
linux-armv7a
linux-armv7l-musl
linux-i686
linux-m68k-uclibc
linux-mips-lts
linux-mips
linux-mipsel-lts
linux-ppc64le
linux-riscv32
linux-riscv64
linux-s390x
linux-x64-clang
linux-x64-tinycc
linux-x64
linux-x86
linux-x86_64-full
linux-xtensa-uclibc
web-wasi
windows-arm64
windows-armv7
windows-shared-x64-posix
windows-shared-x64
windows-shared-x86
windows-static-x64-posix
windows-static-x64
windows-static-x86
@ -127,7 +127,8 @@ Then you must create a file named `Dockerfile.in` in the image folder (`linux-ar
|
|||||||
Copy text to `Dockerfile.in` file:
|
Copy text to `Dockerfile.in` file:
|
||||||
|
|
||||||
```docker
|
```docker
|
||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
1
Makefile
1
Makefile
@ -247,6 +247,7 @@ $(STANDARD_IMAGES): %: %/Dockerfile base
|
|||||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||||
$(DOCKER) build -t $(ORG)/$@:latest \
|
$(DOCKER) build -t $(ORG)/$@:latest \
|
||||||
-t $(ORG)/$@:$(TAG) \
|
-t $(ORG)/$@:$(TAG) \
|
||||||
|
--build-arg ORG=$(ORG) \
|
||||||
--build-arg IMAGE=$(ORG)/$@ \
|
--build-arg IMAGE=$(ORG)/$@ \
|
||||||
--build-arg VERSION=$(TAG) \
|
--build-arg VERSION=$(TAG) \
|
||||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||||
|
20
README.md
20
README.md
@ -565,6 +565,26 @@ The key difference is that [dockbuild](https://github.com/dockbuild/dockbuild#re
|
|||||||
|
|
||||||
**dockcross** is used to build binaries for many different platforms. **dockcross** performs a cross compilation where the host build system is a Linux x86_64 / amd64 Docker image (so that it can be used for building binaries on any system which can run Docker images) and the target runtime system varies.
|
**dockcross** is used to build binaries for many different platforms. **dockcross** performs a cross compilation where the host build system is a Linux x86_64 / amd64 Docker image (so that it can be used for building binaries on any system which can run Docker images) and the target runtime system varies.
|
||||||
|
|
||||||
|
## Build images by yourself
|
||||||
|
|
||||||
|
Perbuilt images available on Docker hub are single architecture amd64 images. Those images work evan on different architectures: for example, if you run a dockcross image on Docker running on an Apple M1, the image will run in emulation mode, meaning that it will still work as expected, although it will be slower than running on native hardware (you can expect a factor or 10 or more).
|
||||||
|
|
||||||
|
To overcome this limitation, you can build your own images on non-amd64 architectures. To do so, you can use the `Makefile` provided in this repository. For example, to build the `linux-armv7` image, and provided that your Docker hub organization name is `ACME`, you can run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ make ORG=ACME base
|
||||||
|
$ make ORG=ACME linux-armv7
|
||||||
|
```
|
||||||
|
|
||||||
|
This will create the Docker images `ACME/base` and `ACME/linux-armv7`, so that you can later launch a container using the `ACME/linux-armv7` image:
|
||||||
|
|
||||||
|
```
|
||||||
|
$ docker run --rm ACME/linux-armv7 uname -a
|
||||||
|
Linux 89b164ee8d90 5.15.49-linuxkit #1 SMP PREEMPT Tue Sep 13 07:51:32 UTC 2022 aarch64 GNU/Linux
|
||||||
|
```
|
||||||
|
|
||||||
|
Note that the architecture is now `aarch64` instead of `amd64`, so it runs natively on the Apple M1.
|
||||||
|
|
||||||
\-\--
|
\-\--
|
||||||
|
|
||||||
Credits:
|
Credits:
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# The cross-compiling emulator
|
# The cross-compiling emulator
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||||
RUN \
|
RUN \
|
||||||
sed -i '/debian-security/d' /etc/apt/sources.list && \
|
sed -i '/debian-security/d' /etc/apt/sources.list && \
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Chen Tao t.clydechen@gmail.com"
|
LABEL maintainer="Chen Tao t.clydechen@gmail.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
# This is for 64-bit ARM Linux machine (Ubuntu 18.04 or Debian 9 mini)
|
# This is for 64-bit ARM Linux machine (Ubuntu 18.04 or Debian 9 mini)
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
ENV XCC_PREFIX /usr/xcc
|
ENV XCC_PREFIX /usr/xcc
|
||||||
ENV CROSS_TRIPLE aarch64-linux-musl
|
ENV CROSS_TRIPLE aarch64-linux-musl
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
ENV XCC_PREFIX /usr/xcc
|
ENV XCC_PREFIX /usr/xcc
|
||||||
ENV CROSS_TRIPLE armv6-linux-musleabihf
|
ENV CROSS_TRIPLE armv6-linux-musleabihf
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
ENV XCC_PREFIX /usr/xcc
|
ENV XCC_PREFIX /usr/xcc
|
||||||
ENV CROSS_TRIPLE armv7l-linux-musleabihf
|
ENV CROSS_TRIPLE armv7l-linux-musleabihf
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="PJ Reid PJ.Reid@Zetier.com"
|
LABEL maintainer="PJ Reid PJ.Reid@Zetier.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
FROM dockcross/base:latest
|
ARG ORG=dockcross
|
||||||
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user