Tôi có một Dockerfile đơn giản, chính xác như sau:ssh-keyscan không tìm thấy trong Dockerfile
FROM ubuntu:14.04
RUN apt-get update
RUN apt-get -y upgrade
RUN mkdir -p /root/.ssh
RUN touch /root/.ssh/known_hosts
RUN ssh-keyscan github.com >> /root/.ssh/known_hosts
Kết quả của việc chạy:
docker build -no-cache -t testimage .
là:
Step 5 : RUN ssh-keyscan github.com >> /root/.ssh/known_hosts
---> Running in e11ef5962a11
/bin/sh: 1: ssh-keyscan: not found
Tuyệt vời! Nó đã không xảy ra với tôi rằng ssh đã không được cài đặt. Nhưng cho rằng ssh vào docker có vẻ là một thực hành chống, tôi cho rằng điều đó có ý nghĩa. Cảm ơn! – KevinArrrrrg
@KevinArrrrrg có, chỉ cần truy cập vào thùng chứa đang chạy từ máy chủ lưu trữ của trình docker, một 'docker exec bash' là đủ. Nhưng để truy cập vào một thùng chứa đang chạy từ một máy khác, ssh là một trình lắng nghe hợp pháp, bạn phải cài đặt nó. –
VonC
Nếu bạn chỉ sau ssh-keyscan, openssh-client có dấu chân nhỏ hơn gói ssh. –