我正在尝试将二进制文件添加到Docker镜像中。
这是我的 docker 文件。
FROM ALPINE
ADD gcc-arm-none-eabi-7-2017-q4-major-linux.tar.bz2 /
我建立,
$ sudo docker build -t test1 .
Sending build context to Docker daemon 99.86MB
Step 1/2 : FROM alpine
latest: Pulling from library/alpine
ff3a5c916c92: Pull complete
Digest: sha256:e1871801d30885a610511c867de0d6baca7ed4e6a2573d506bbec7fd3b03873f
Status: Downloaded newer image for alpine:latest
---> 3fd9065eaf02
Step 2/2 : ADD gcc-arm-none-eabi-7-2017-q4-major-linux.tar.bz2 /
---> 1c64eaf65019
Successfully built 1c64eaf65019
Successfully tagged test1:latest
然后我跑
$ sudo docker run -i -t test1
/ # ls
bin gcc-arm-none-eabi-7-2017-q4-major media root srv usr
dev home mnt run sys var
etc lib proc sbin tmp
/ # cd gcc-arm-none-eabi-7-2017-q4-major/
/gcc-arm-none-eabi-7-2017-q4-major # ls
arm-none-eabi bin lib share
/gcc-arm-none-eabi-7-2017-q4-major # cd bin
/gcc-arm-none-eabi-7-2017-q4-major/bin # ls
arm-none-eabi-addr2line arm-none-eabi-c++filt arm-none-eabi-gcc arm-none-eabi-gcc-ranlib arm-none-eabi-gdb arm-none-eabi-ld.bfd arm-none-eabi-ranlib arm-none-eabi-strip
arm-none-eabi-ar arm-none-eabi-cpp arm-none-eabi-gcc-7.2.1 arm-none-eabi-gcov arm-none-eabi-gdb-py arm-none-eabi-nm arm-none-eabi-readelf
arm-none-eabi-as arm-none-eabi-elfedit arm-none-eabi-gcc-ar arm-none-eabi-gcov-dump arm-none-eabi-gprof arm-none-eabi-objcopy arm-none-eabi-size
arm-none-eabi-c++ arm-none-eabi-g++ arm-none-eabi-gcc-nm arm-none-eabi-gcov-tool arm-none-eabi-ld arm-none-eabi-objdump arm-none-eabi-strings
/gcc-arm-none-eabi-7-2017-q4-major/bin # ./arm-none-eabi-gcc 123
/bin/sh: ./arm-none-eabi-gcc: not found
/gcc-arm-none-eabi-7-2017-q4-major/bin # ./arm-none-eabi-gcc
/bin/sh: ./arm-none-eabi-gcc: not found
/gcc-arm-none-eabi-7-2017-q4-major/bin #
从上面可以看到,它说“未找到”,但显然在那里。
有谁知道做这种事情的正确方法?
我的计划是为此嵌入式平台添加一堆用C语言编写的驱动程序,并将docker容器用作隔离的开发环境。
谢谢!
最佳答案
二进制文件适用于Ubuntu 16.04,更改为:
FROM ubuntu:16.04
关于docker - 将二进制文件添加到Docker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50849020/