Problem installing CLI doppler in Docker

Hi everyone,

I’m having problems with one of my CI job since I changed my docker image
I managed to install the CLI with the shell script on the node:12-alpine image.
But since I switched to the node:16-alpine image it doesn’t work anymore.

I’m running this command:

(curl -Ls --tlsv1.2 --proto "=https" --retry 3 https://cli.doppler.com/install.sh || wget -t 3 -qO- https://cli.doppler.com/install.sh) | sh

The output with the debug flag is not giving me any usefull information:

DEBUG: Detected OS 'linux'
DEBUG: Detected architecture 'amd64'
DEBUG: Detected format 'tar'
DEBUG: Unable to find gpg binary, skipping signature verification
WARNING: Skipping signature verification due to no available gpg binary
Signature verification is an additional measure to ensure you're executing code that Doppler produced
You can remove this warning by installing your system's gnupg package, or by specifying --no-verify-signature

DEBUG: Using temp directory /root/.tmp.XXjNCEpL
Downloading Doppler CLI
DEBUG: Using /usr/bin/wget for requests
DEBUG: Downloading binary from https://cli.doppler.com/download?os=linux&arch=amd64&format=tar&verify=0
DEBUG: Skipping additional security flags that are unsupported by BusyBox wget
WARNING: This system's wget binary is provided by BusyBox. Doppler strongly suggests installing GNU wget, which provides additional security features.
ERROR: script failed during execution
DEBUG: Removing temp directory

If i try to direclty wget the binary like the script is doing i get a 404 not found:

# wget --secure-protocol=TLSv1_2 --https-only -q -t 5 -S -O doppler https://cli.doppler.com/download?os=linux&arch=amd64&format=tar&verify=0
  HTTP/1.1 404 Not Found
  Date: Wed, 08 Dec 2021 13:32:57 GMT
  Content-Type: text/plain;charset=UTF-8
  Content-Length: 14
  Connection: keep-alive
  Cache-Control: no-cache, no-store, max-age=0, must-revalidate
  Expect-CT: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
  Report-To: {"endpoints":[{"url":"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=T%2F%2FJsFucM2dgIrOcilXVCrCAwGs29e0%2FMRh4ZtpcSTn5yNtcza8%2B8uZDGAxpqnoap%2Bcu2Ix5mu20eHQM9MOBTttQpnlwgFVZhYpUty6dXDAFMoFmk7Pnn7YJpWL6aAH55A%3D%3D"}],"group":"cf-nel","max_age":604800}
  NEL: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
  Vary: Accept-Encoding
  Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
  X-Content-Type-Options: nosniff
  Server: cloudflare
  CF-RAY: 6ba65cdace6e0847-CDG

Has anyone had the same problem ?
Thank’s !

Ok, so after investigating the problem does not come from node but from downloading the release directly from github.
After following the download link and try to wget it i get the following error:

HTTP/1.1 503 Egress is over the account limit.

This is a new issue on github, you can see a thread here

It would be great for Doppler to mirror the releases so that we don’t depend on github to download them.

Hi @mayeul and welcome to the Doppler community!

I’d recommend switching to the package management version of installing the CLI so that you’re not susceptible to this issue as it seems GitHub can’t guarantee that it won’t happen again.

The Alpine install command is below and is taken from our CLI install page.

# Install the Doppler CLI
wget -q -t3 'https://packages.doppler.com/public/cli/rsa.8004D9FF50437357.key' -O /etc/apk/keys/cli@doppler-8004D9FF50437357.rsa.pub
echo 'https://packages.doppler.com/public/cli/alpine/any-version/main' | tee -a /etc/apk/repositories
apk add doppler

Hi ryan, thank you for your reply.
It’s the best way to solve the problem with alpine.