Когда я пытаюсь запустить # ssh-add из контейнера - это всегда приводит к невозможности подключения к ssh-agent.
Примечание. Я перепробовал все, что смог найти в StackOverflow / Internet:
eval ssh-agent
или eval ssh-agent -s
или eval $ (ssh-agent -s) ssh-add или ssh-add -K или ssh-add -k Ничего не сработало.
Что я обнаружил, так это то, что если я запускаю точно такой же код внутри контейнера вручную - это работает.
Кроме того, когдаЯ пытался запустить во время сборки Docker такие вещи:
RUN SSH_AGENT_PID=`eval "$(ssh-agent -s)" | cut -d " " -f3`; export SSH_AGENT_PID
RUN echo $SSH_AGENT_PID
Я получил пустую строку (и).Это означает, что использование eval внутри контейнера совершенно бесполезно.
Платформа: SUSE LEAP 15.
Docker версия 18.09.1, сборка 4c52b901c6cb
FROM alpine:latest
RUN mkdir /app
RUN apk --update add openssh-client
COPY ./uppa /app/
COPY ./uppa.pub /app/
RUN echo "ForwardAgent yes" >> /etc/ssh/ssh_config
#RUN eval "$(ssh-agent -s)"
RUN eval `ssh-agent -s`
#RUN SSH_AGENT_PID=`eval "$(ssh-agent -s)" | cut -d " " -f3`; export `SSH_AGENT_PID`
RUN ssh-add -k /app/uppa
#RUN echo $SSH_AGENT_PID
ПРИМЕЧАНИЕ: у меня естьзапустил docker -it вручную, проверил, есть ли в папке закрытый и открытый ключи (uppa и uppa.pub).Они есть.Более того: если я запускаю точно такую же вещь вручную из своего контейнера - это работает!
Пожалуйста, помогите.