Skip to content

Container won't start on 32-bit system #539

Closed
@amcinnes

Description

@amcinnes

I'm seeing this:

# docker pull postgres
Using default tag: latest
latest: Pulling from library/postgres
Digest: sha256:28b4a1b0d3ae9b38a16c97a4e655bdc13496a304d1a241c531ac1efc2faa7230
Status: Image is up to date for postgres:latest
# docker run postgres
error: failed switching to "postgres": function not implemented

This is a 32-bit image running on a 32-bit Arch Linux system (https://archlinux32.org/). Although, if I try to pull the same image (actually postgres@sha256:0ce7cf6e460f486f5f9f0ae16ca5504b5e8aa468fdb6e27caa30f38a8ccf2874 to get the 32-bit one) to an x86_64 Arch system it still has the same problem.

# uname -a
Linux router.lan 4.19.4-arch1-1.0-ARCH #1 SMP PREEMPT Mon Nov 26 10:55:08 CET 2018 i686 GNU/Linux

I think the problem is in gosu; if I copy the gosu binary out of the container, and run it outside of Docker, I see the same error.

# ./gosu root true
error: failed switching to "root": function not implemented

gosu is making a setuid syscall which is returning ENOSYS. I'm not sure why.

Can someone reproduce the problem?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions