Download Github build artifact (release) using wget/curl

The Goal: Download github release tar.gz in Docker Build Script, so that the release files can be used for the docker image. I do not want the full source downloaded, which I can get to download through the archive path using the tag, but rather a build artifact that is part of the release.

To Be Noted: This is a download from a private repository, which is why I’m attempting to send my github_token as part of the command currently.

  • npm install results to error in docker
  • Get environment variable value in Dockerfile
  • Docker publishing ports to multiple IPs
  • 'Kubectl' throws error 'failed to negotiate an api version' while installing using docker
  • Run the image for Docker no see results
  • yarn install error Couldn't find a package.json during Docker build
  • The Problem: I’m having trouble downloading a github release tar.gz using wget.

    wget --header="Authorization: token <GITHUB_TOKEN>" --output-document=<FILENAME>.tar.gz https://github.com/<USER>/<REPO>/releases/download/<TAG>/<FILENAME>.tar.gz
    

    This is returning the following error:

    --2014-12-02 16:19:25--  https://github.com/<USER>/<REPO>/releases/download/<TAG>/<FILENAME>.tar.gz
    Resolving github.com (github.com)... 192.30.252.131, 192.30.252.131
    Connecting to github.com (github.com)|192.30.252.131|:443... connected.
    HTTP request sent, awaiting response... 404 Not Found
    2014-12-02 16:19:25 ERROR 404: Not Found.
    

    It’s worth noting that I’m not opposed to using curl for the download either or some other solution if necessary.

  • Docker Java Application failing at obtaining input from console
  • Running bvlc-caffe docker image as non-root user results in unexpected NVCC flags
  • Jenkins shell script add Unix user to group
  • Do Docker support 32 bit ubuntu(12.04) or suse OS in future?
  • how to have gradle copy all the non-transitive dependencies, stripping the version number?
  • Restarting vs Building a Container on Docker
  • One Solution collect form web for “Download Github build artifact (release) using wget/curl”

    You can use the GitHub API.

    To download a release using wget, you can do:

    wget --header "Authorization: token <GITHUB TOKEN>"  --output-document=<RELEASE>.tar.gz https://api.github.com/repos/<USER>/<REPO>/tarball/<RELEASE NAME>
    

    Use can change tarball to zipball to get a zip file.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.