Skip to content

Commit

Permalink
Improvements to the Docker installation guide (#6216)
Browse files Browse the repository at this point in the history
  • Loading branch information
zanieb committed Aug 19, 2024
1 parent 39c3c01 commit 298725f
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 5 deletions.
4 changes: 2 additions & 2 deletions docs/getting-started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,11 @@ By default, uv is installed to `~/.cargo/bin`.
Request a specific version by including it in the URL:

```console title="macOS and Linux"
$ curl -LsSf https://astral.sh/uv/0.2.11/install.sh | sh
$ curl -LsSf https://astral.sh/uv/0.2.37/install.sh | sh
```

```console title="Windows"
$ powershell -c "irm https://astral.sh/uv/0.2.11/install.ps1 | iex"
$ powershell -c "irm https://astral.sh/uv/0.2.37/install.ps1 | iex"
```

!!! tip
Expand Down
25 changes: 22 additions & 3 deletions docs/guides/integration/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,18 +18,37 @@ FROM python:3.12-slim-bullseye
COPY --from=ghcr.io/astral-sh/uv:latest /uv /bin/uv
```

Or with the standalone installer:
Or, with the installer:

```dockerfile title="Dockerfile"
FROM python:3.12-slim-bullseye

# The installer requires curl (and certificates) to download the release archive
RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates
RUN curl -LsSf https://astral.sh/uv/install.sh > /tmp/uv-installer.sh && sh /tmp/uv-installer.sh && rm /tmp/uv-installer.sh

# Download the latest installer
ADD https://astral.sh/uv/install.sh /uv-installer.sh

# Run the installer then remove it
RUN sh /uv-installer.sh && rm /uv-installer.sh

# Ensure the installed binary is on the `PATH`
ENV PATH="/root/.cargo/bin/:$PATH"
```

Note this requires `curl` to be available.

In either case, it is best practice to pin to a specific uv version.
In either case, it is best practice to pin to a specific uv version, e.g., with:

```dockerfile
COPY --from=ghcr.io/astral-sh/uv:0.2.37 /uv /bin/uv
```

Or, with the installer:

```dockerfile
ADD https://astral.sh/uv/0.2.37/install.sh /uv-installer.sh
```

## Installing a package

Expand Down
2 changes: 2 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,8 @@ version_files = [
"README.md",
"crates/uv/Cargo.toml",
"crates/uv-version/Cargo.toml",
"docs/getting-started/installation.md",
"docs/guides/integration/docker.md",
"docs/guides/integration/pre-commit.md",
"docs/guides/integration/github.md",
]
Expand Down

0 comments on commit 298725f

Please sign in to comment.