nginx:在 $PATH 中找不到可执行文件”:未知

nginx : executable file not found in $PATH": unknown

我正在尝试使用 Redhat UBI 映像部署 Nginx 映像,因为我构建的映像编译无误。我收到在 $PATH 中找不到的错误可执行文件":未知。

谁能告诉我 docker 文件中缺少什么?

我使用的是来自RedHat UBI open images的镜像,使用的是已经提供的容器镜像。

https://catalog.redhat.com/software/containers/search?q=ubi

下面是我正在使用的 Dockerfile。

FROM registry.access.redhat.com/ubi8/ubi-init
USER root
COPY api-gatway /usr/share/nginx/html
EXPOSE 8080
CMD ["nginx", "-g", "daemon off;"]

下面是我尝试 运行 docker 图片

后出现的错误
docker run --name testinxcg -d -p 8080:80 test
6220f7274745212afbab07e20bbbf9fa4995a834962b104d7951b6d4965a3237
docker: Error response from daemon: OCI runtime create failed: container_linux.go:346: starting container process caused "exec: \"nginx\": executable file not found in $PATH": unknown.
uk-c02xk2ykjg5j:api-gateway mbyousaf$ 

Red Hat Enterprise Linux (RHEL) 8 中没有 docker,但是 OCI-compatible 替代品称为 Podman 和 Buildah。

为了在不需要守护进程的情况下启用容器管理,Red Hat 为您的 Linux 容器应用程序开发提供了 introduced 一套工具: Buildah 允许您在没有任何守护进程或 docker 的情况下构建容器。 Podman 允许您在没有守护进程依赖的情况下管理容器,它也是 docker cli 兼容的。

# podman pull

RHEL 8 compatible images can be found [here][2].

# yum install -y podman

# alias docker=podman

type to use podman in place of docker - for using docker commands