Issue
Due to firewall restriction, I cannot do the following command in Dockerfile:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
What I did is I manually downloaded microsoft.asc, placed it and running the following in my Dockerfile
COPY myfolder/microsoft.asc /usr/
RUN apt-get update
&& apt-get install -y curl apt-transport-https locales gnupg2
&& /usr/microsoft.asc | apt-key add -
This is the error I am getting:
1: /usr/microsoft.asc: -----BEGIN: not found
2: /usr/microsoft.asc: mQENBFYxWIwBCADAKoZhZlJxGNGWzqV+1OG1xiQeoowKhssGAKvd+buXCGISZJwT: not found
3: /usr/microsoft.asc: LXZqIcIiLP7pqdcZWtE9bSc7yBY2MalDp9Liu0KekywQ6VVX1T72NPf5Ev6x6DLV: not found
4: /usr/microsoft.asc: 7aVWsCzUAF+eb7DC9fPuFLEdxmOEYoPjzrQ7cCnSV4JQxAqhU4T6OjbvRazGl3ag: not found
5: /usr/microsoft.asc: OeizPXmRljMtUUttHQZnRhtlzkmwIrUivbfFPD+fEoHJ1+uIdfOzZX8/oKHKLe2j: not found
6: /usr/microsoft.asc: H632kvsNzJFlROVvGLYAk2WRcLu+RjjggixhwiB+Mu/A8Tf4V6b+YppS44q8EvVr: not found
7: /usr/microsoft.asc: M+QvY7LNSOffSO6Slsy9oisGTdfE39nC7pVRABEBAAG0N01pY3Jvc29mdCAoUmVs: not found
8: /usr/microsoft.asc: ZWFzZSBzaWduaW5nKSA8Z3Bnc2VjdXJpdHlAbWljcm9zb2Z0LmNvbT6JATUEEwEC: not found
9: /usr/microsoft.asc: AB8FAlYxWIwCGwMGCwkIBwMCBBUCCAMDFgIBAh4BAheAAAoJEOs+lK2+EinPGpsH: not found
10: /usr/microsoft.asc: /32vKy29Hg51H9dfFJMx0/a/F+5vKeCeVqimvyTM04C+XENNuSbYZ3eRPHGHFLqe: not found
11: /usr/microsoft.asc: MNGxsfb7C7ZxEeW7J/vSzRgHxm7ZvESisUYRFq2sgkJ+HFERNrqfci45bdhmrUsy: not found
12: /usr/microsoft.asc: 7SWw9ybxdFOkuQoyKD3tBmiGfONQMlBaOMWdAsic965rvJsd5zYaZZFI1UwTkFXV: not found
13: /usr/microsoft.asc: KJt3bp3Ngn1vEYXwijGTa+FXz6GLHueJwF0I7ug34DgUkAFvAs8Hacr2DRYxL5RJ: not found
14: /usr/microsoft.asc: XdNgj4Jd2/g6T9InmWT0hASljur+dJnzNiNCkbn9KbX7J/qK1IbR8y560yRmFsU+: not found
15: /usr/microsoft.asc: NdCFTW7wY0Fb1fWJ+/KTsC4=: not found
16: /usr/microsoft.asc: =J6gs: not found
17: /usr/microsoft.asc: -----END: not found
I'm not sure if storing the file is just a bad idea, but I don't really have other ways to go around the firewall
Solution
If you have the file on your file system, there's no need to use piping to get it into apt-key add -
. You can simply put the filename on the apt-key add
command like this
COPY myfolder/microsoft.asc /usr/
RUN apt-get update
&& apt-get install -y curl apt-transport-https locales gnupg2
&& apt-key add /usr/microsoft.asc
Answered By - Hans Kilian Answer Checked By - Clifford M. (WPSolving Volunteer)