Skip to content

Installing Tools for Shell Scripts

Shell environments start from a minimal Alpine Linux image — enough to run a .sh script, but nothing beyond a basic shell. If your script needs curl, jq, the AWS CLI, or any other tool, install it via Additional Dockerfile Instructions, since Shell environments have no dedicated settings of their own for this.

Installing packages with apk

  1. Open the Shell environment (or create one) and go to AdvancedAdditional Dockerfile Instructions.

  2. Add a RUN instruction using Alpine's package manager, apk. For example, to install curl and jq:

    dockerfile
    RUN apk add --no-cache curl jq
  3. Save the environment and run your schedule.

Search the Alpine package index for the exact package name if you're not sure what to install — Alpine's package names sometimes differ from Debian or Ubuntu's.

Installing the AWS CLI

Alpine doesn't ship the AWS CLI as a single package. Install it into a virtual environment and link the binary onto the PATH:

dockerfile
RUN apk add --no-cache python3 py3-pip \
  && python3 -m venv /opt/awscli \
  && /opt/awscli/bin/pip install --no-cache-dir awscli \
  && ln -s /opt/awscli/bin/aws /usr/local/bin/aws

Installing Python or Node.js

If your script shells out to python3 or node, install the corresponding Alpine package:

dockerfile
RUN apk add --no-cache python3 py3-pip
dockerfile
RUN apk add --no-cache nodejs npm

Combine multiple RUN instructions, or chain them with &&, to install everything your script depends on in one environment.

See Environments for the full Additional Dockerfile Instructions reference.

Was this page helpful?