32位docker image - 编译的二进制文件显示为64位

时间:2017-09-15 00:52:14

标签: c++ bash docker dockerfile protoc

我正在尝试创建一个32位的docker镜像,上面有Googles gRPC。

我创建了从:

扩展的Dockerfile
bash: /usr/local/bin/protoc: No such file or directory

我能够编译gRPC和Proto Buffers,但是,当我尝试使用protoc时,我得到file

当我运行file /usr/local/bin/protoc /usr/local/bin/protoc: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.18, BuildID[sha1]=e87bf6eb1c507bb7f65f3c7687df6a3b41b563be, stripped 时,我看到程序集被视为64位。

uname -m

因此,我的问题是如何编写和构建一个实际为32位的docker镜像。当我在容器中运行archx86_64时,我得到dpkg --print-architecture,但i386显示SELECT transaction_transaction.id, sec_to_time(avg(time_to_sec(extract(HOUR_SECOND from transaction_transaction.transaction_datetime)))) AS average_time_of_day FROM transaction_transaction INNER JOIN store_store ON (transaction_transaction.store_id=store_store.id) INNER JOIN payment_method_card ON (transaction_transaction.card_id=payment_method_card.id) WHERE ( transaction_transaction.transaction_datetime BETWEEN '2017-08-31 00:00:00' AND '2017-08-31 23:59:59' AND store_store.company_id=2 AND payment_method_card.profile_id=8 ); ,所以看起来它实际上并不是+== id ==+== average_time_of_day ==+ |= 9422 =|===== 20:42:22.8695 =====| 32位图像。

0 个答案:

没有答案