我遇到了一个问题,在发出 docker build 命令时收到以下错误:-
curl: (6) Could not resolve host: dl.yarnpkg.com
gpg: no valid OpenPGP data found.
Run Code Online (Sandbox Code Playgroud)
这是我的 Dockerbuild 文件
# Base image
FROM ruby:2.5.0
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash -
RUN curl -fsSL https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee
/etc/apt/sources.list.d/yarn.lisT
RUN apt-get update
RUN apt-get install -qq -y build-essential libpq-dev nodejs yarn
Run Code Online (Sandbox Code Playgroud)
在 docker 之外运行时,这些命令会成功完成。
为了解决这些问题,我尝试了以下方法
我正在尝试在 ruby 中创建一个脚本,该脚本读取文件夹中的文件,并将它们合并到一个单独的文件中。
这就是我想出的
File.open('authorized_keys','a') do |mergedfile|
@files = Dir.glob('/home/<user>/ruby_script/*.keys')
for file in @files
text = File.open(file, 'r').read
text.each_line do |line|
mergedfile << line
end
end
end
Run Code Online (Sandbox Code Playgroud)
这个想法是,该脚本将为我们的开发人员从 github 下载公钥文件,将它们合并到authorized_keys 文件中,然后我们将其 scp 到我们的云服务器。
我遇到的问题是,当生成authorized_key 文件时,一些ssh 密钥位于新行,一些与其他密钥位于同一行。
我检查了下载的文件,每个密钥都在自己的行上
如何确保每个键都在自己的行上?
谢谢