ssh-keygen:在 Docker 中找不到命令

Jan*_*uka 3 ssh docker

我正在尝试在 docker 容器内运行以下命令(centos 7作为基本映像)

ssh-keygen -t rsa -N ""
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

ssh-keygen:找不到命令

这是Dockerfile我用来构建容器的

FROM centos:7

ENV VER "0.12.9"

RUN yum update -y && yum install wget -y && yum install unzip -y
RUN yum install epel-release -y && yum install ansible -y

RUN wget https://releases.hashicorp.com/terraform/${VER}/terraform_${VER}_linux_amd64.zip
RUN unzip terraform_${VER}_linux_amd64.zip
RUN mv terraform /usr/local/bin/  
RUN rm -rf terraform_${VER}_linux_amd64.zip
Run Code Online (Sandbox Code Playgroud)

有人能帮助我吗?

Kar*_*arx 6

ssh-keygen是OpenSSH提供的命令,需要安装它。

添加yum install openssh-clients -y到您的 Dockerfile。

FROM centos:7

ENV VER "0.12.9"

RUN yum update -y && yum install wget -y && yum install unzip -y
RUN yum install epel-release -y && yum install ansible -y && yum install openssh-clients -y

RUN wget https://releases.hashicorp.com/terraform/${VER}/terraform_${VER}_linux_amd64.zip
RUN unzip terraform_${VER}_linux_amd64.zip
RUN mv terraform /usr/local/bin/  
RUN rm -rf terraform_${VER}_linux_amd64.zip
Run Code Online (Sandbox Code Playgroud)

  • 至少在 Debian 上:“openssh-client”而不是“openssh-clients” (2认同)