无法在Ubuntu 18.04 LTS上运行pgadmin4 docker



Hello StackOverflowers,

我试图在Ubuntu 18.04 LTS中使用Docker安装pgadmin4,但每次创建容器时都会崩溃。

这是我使用的命令:

docker run -p 8082:80 --name pgadmin_server 
-e 'PGADMIN_DEFAULT_EMAIL=user@domain.com' 
-e 'PGADMIN_DEFAULT_PASSWORD=password' 
dpage/pgadmin4

这是我得到的结果

standard_init_linux.go:211: exec user process caused "exec format error"

当我运行docker container ls -a时,这就是我得到的。我的容器已关闭

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                     PORTS                    NAMES
034b89accaae        dpage/pgadmin4      "/entrypoint.sh"         5 minutes ago       Exited (1) 4 minutes ago                            pgadmin_server
1e660903663e        postgres:9.2        "docker-entrypoint.s…"   48 minutes ago      Up 48 minutes              0.0.0.0:5432->5432/tcp   postgres_container

这是我使用的docker版本:

Docker version 19.03.6, build 369ce74a3c

顺便说一句,我在32位机器上运行Ubuntu 18.04 LTS

感谢您的帮助

当您在本地构建映像时,默认情况下,它将为与本地主机相同的架构构建。由于目前大多数x86系统都是64位系统(以至于许多发行版都放弃了对32位x86体系结构的支持(,这意味着您找到的绝大多数映像只能在x8_64系统上运行。

在"官方"图像中更常见的是找到多架构支持:

DockerHub上的大多数官方镜像都提供了各种架构。例如,busybox映像支持amd64、arm32v5、arm32v6、arm32v4、arm64v8、i386、ppc64le和s390x。当在x86_64/amd64计算机上运行此映像时,x86_64变体将被提取并运行。

(该报价来自以下链接(

虽然支持构建多体系结构图像,但这需要构建图像的人进行明确的配置。

我不相信Docker提供了任何工具来方便地探索给定图像的支持架构。您可以使用skopeo工具来完成此操作,尽管过程仍然有点不明显。要查看多体系结构映像的体系结构列表,我们需要使用--raw选项:

$ skopeo inspect --raw docker://busybox | python -mjson.tool | grep -i architecture
"architecture": "amd64",
"architecture": "arm",
"architecture": "arm",
"architecture": "arm",
"architecture": "arm64",
"architecture": "386",
"architecture": "mips64le",
"architecture": "ppc64le",
"architecture": "s390x",

对于单个架构图像,以上不会产生任何结果;在这种情况下,删除--raw以查看体系结构:

$ skopeo inspect docker://dpage/pgadmin4 | python -mjson.tool | grep -i architecture
"Architecture": "amd64",

相关内容

  • 没有找到相关文章

最新更新