Skip to content

Commit 8882ca6

Browse files
authored
Merge branch 'rust-lang:master' into master
2 parents 9dec4d4 + 1a07514 commit 8882ca6

File tree

21 files changed

+641
-99
lines changed

21 files changed

+641
-99
lines changed

.github/workflows/ci.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: CI
2+
3+
permissions:
4+
contents: read
5+
6+
on:
7+
pull_request:
8+
push:
9+
branches:
10+
- master
11+
12+
defaults:
13+
run:
14+
shell: bash
15+
16+
jobs:
17+
build:
18+
runs-on: ubuntu-latest
19+
env:
20+
#RUST_VERSION
21+
RUST_VERSION: 1.79.0
22+
#RUST_VERSION
23+
strategy:
24+
matrix:
25+
include:
26+
#VERSIONS
27+
- name: bullseye
28+
variant: bullseye
29+
- name: slim-bullseye
30+
variant: bullseye/slim
31+
- name: bookworm
32+
variant: bookworm
33+
- name: slim-bookworm
34+
variant: bookworm/slim
35+
- name: alpine3.19
36+
variant: alpine3.19
37+
- name: alpine3.20
38+
variant: alpine3.20
39+
#VERSIONS
40+
name: ${{ matrix.name }}
41+
steps:
42+
- uses: actions/checkout@v4
43+
- run: git clone https://github.com/docker-library/official-images.git ~/official-images
44+
- run: docker build -t rust:$RUST_VERSION-${{ matrix.name }} $RUST_VERSION/${{ matrix.variant }}
45+
- run: ~/official-images/test/run.sh rust:$RUST_VERSION-${{ matrix.name }}
46+
- run: docker images

.github/workflows/nightly.yml

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
name: Nightly Publish
2+
3+
permissions:
4+
contents: read
5+
packages: write
6+
7+
on:
8+
push:
9+
branches:
10+
- master
11+
pull_request:
12+
branches:
13+
- master
14+
schedule:
15+
- cron: '0 0 * * *'
16+
17+
jobs:
18+
build:
19+
runs-on: ubuntu-latest
20+
strategy:
21+
matrix:
22+
include:
23+
#VERSIONS
24+
- name: bullseye
25+
context: nightly/bullseye
26+
platforms: linux/amd64,linux/arm/v7,linux/arm64,linux/386,linux/ppc64le,linux/s390x
27+
tags: |
28+
nightly-bullseye
29+
- name: slim-bullseye
30+
context: nightly/bullseye/slim
31+
platforms: linux/amd64,linux/arm/v7,linux/arm64,linux/386,linux/ppc64le,linux/s390x
32+
tags: |
33+
nightly-bullseye-slim
34+
- name: bookworm
35+
context: nightly/bookworm
36+
platforms: linux/amd64,linux/arm/v7,linux/arm64,linux/386,linux/ppc64le,linux/s390x
37+
tags: |
38+
nightly-bookworm
39+
nightly
40+
- name: slim-bookworm
41+
context: nightly/bookworm/slim
42+
platforms: linux/amd64,linux/arm/v7,linux/arm64,linux/386,linux/ppc64le,linux/s390x
43+
tags: |
44+
nightly-bookworm-slim
45+
nightly-slim
46+
- name: alpine3.19
47+
context: nightly/alpine3.19
48+
platforms: linux/amd64,linux/arm64
49+
tags: |
50+
nightly-alpine3.19
51+
- name: alpine3.20
52+
context: nightly/alpine3.20
53+
platforms: linux/amd64,linux/arm64
54+
tags: |
55+
nightly-alpine3.20
56+
nightly-alpine
57+
#VERSIONS
58+
name: ${{ matrix.name }}
59+
steps:
60+
- uses: actions/checkout@v4
61+
- uses: docker/setup-qemu-action@v3
62+
- uses: docker/setup-buildx-action@v3
63+
- uses: docker/login-action@v3
64+
if: github.event_name != 'pull_request'
65+
with:
66+
registry: ghcr.io
67+
username: rust-lang
68+
password: ${{ secrets.GITHUB_TOKEN }}
69+
70+
- uses: docker/login-action@v3
71+
if: github.event_name != 'pull_request'
72+
with:
73+
username: rustopsbot
74+
password: ${{ secrets.DOCKER_HUB_TOKEN }}
75+
76+
- id: meta
77+
uses: docker/metadata-action@v5
78+
with:
79+
images: |
80+
rustlang/rust
81+
ghcr.io/rust-lang/rust
82+
tags: ${{ matrix.tags }}
83+
84+
- uses: docker/build-push-action@v5
85+
with:
86+
context: ${{ matrix.context }}
87+
platforms: ${{ matrix.platforms }}
88+
push: ${{ github.event_name != 'pull_request' }}
89+
tags: ${{ steps.meta.outputs.tags }}
90+
labels: ${{ steps.meta.outputs.labels }}

.travis.yml

Lines changed: 0 additions & 25 deletions
This file was deleted.

1.51.0/alpine3.12/Dockerfile renamed to 1.79.0/alpine3.19/Dockerfile

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
FROM alpine:3.12
1+
FROM alpine:3.19
2+
3+
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
24

35
RUN apk add --no-cache \
46
ca-certificates \
@@ -7,16 +9,16 @@ RUN apk add --no-cache \
79
ENV RUSTUP_HOME=/usr/local/rustup \
810
CARGO_HOME=/usr/local/cargo \
911
PATH=/usr/local/cargo/bin:$PATH \
10-
RUST_VERSION=1.51.0
12+
RUST_VERSION=1.79.0
1113

1214
RUN set -eux; \
1315
apkArch="$(apk --print-arch)"; \
1416
case "$apkArch" in \
15-
x86_64) rustArch='x86_64-unknown-linux-musl'; rustupSha256='05c5c05ec76671d73645aac3afbccf2187352fce7e46fc85be859f52a42797f6' ;; \
16-
aarch64) rustArch='aarch64-unknown-linux-musl'; rustupSha256='6a8a480d8d9e7f8c6979d7f8b12bc59da13db67970f7b13161ff409f0a771213' ;; \
17+
x86_64) rustArch='x86_64-unknown-linux-musl'; rustupSha256='1455d1df3825c5f24ba06d9dd1c7052908272a2cae9aa749ea49d67acbe22b47' ;; \
18+
aarch64) rustArch='aarch64-unknown-linux-musl'; rustupSha256='7087ada906cd27a00c8e0323401a46804a03a742bd07811da6dead016617cc64' ;; \
1719
*) echo >&2 "unsupported architecture: $apkArch"; exit 1 ;; \
1820
esac; \
19-
url="https://static.rust-lang.org/rustup/archive/1.23.1/${rustArch}/rustup-init"; \
21+
url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init"; \
2022
wget "$url"; \
2123
echo "${rustupSha256} *rustup-init" | sha256sum -c -; \
2224
chmod +x rustup-init; \

1.51.0/alpine3.13/Dockerfile renamed to 1.79.0/alpine3.20/Dockerfile

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
FROM alpine:3.13
1+
FROM alpine:3.20
2+
3+
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
24

35
RUN apk add --no-cache \
46
ca-certificates \
@@ -7,16 +9,16 @@ RUN apk add --no-cache \
79
ENV RUSTUP_HOME=/usr/local/rustup \
810
CARGO_HOME=/usr/local/cargo \
911
PATH=/usr/local/cargo/bin:$PATH \
10-
RUST_VERSION=1.51.0
12+
RUST_VERSION=1.79.0
1113

1214
RUN set -eux; \
1315
apkArch="$(apk --print-arch)"; \
1416
case "$apkArch" in \
15-
x86_64) rustArch='x86_64-unknown-linux-musl'; rustupSha256='05c5c05ec76671d73645aac3afbccf2187352fce7e46fc85be859f52a42797f6' ;; \
16-
aarch64) rustArch='aarch64-unknown-linux-musl'; rustupSha256='6a8a480d8d9e7f8c6979d7f8b12bc59da13db67970f7b13161ff409f0a771213' ;; \
17+
x86_64) rustArch='x86_64-unknown-linux-musl'; rustupSha256='1455d1df3825c5f24ba06d9dd1c7052908272a2cae9aa749ea49d67acbe22b47' ;; \
18+
aarch64) rustArch='aarch64-unknown-linux-musl'; rustupSha256='7087ada906cd27a00c8e0323401a46804a03a742bd07811da6dead016617cc64' ;; \
1719
*) echo >&2 "unsupported architecture: $apkArch"; exit 1 ;; \
1820
esac; \
19-
url="https://static.rust-lang.org/rustup/archive/1.23.1/${rustArch}/rustup-init"; \
21+
url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init"; \
2022
wget "$url"; \
2123
echo "${rustupSha256} *rustup-init" | sha256sum -c -; \
2224
chmod +x rustup-init; \

1.79.0/bookworm/Dockerfile

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
FROM buildpack-deps:bookworm
2+
3+
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
4+
5+
ENV RUSTUP_HOME=/usr/local/rustup \
6+
CARGO_HOME=/usr/local/cargo \
7+
PATH=/usr/local/cargo/bin:$PATH \
8+
RUST_VERSION=1.79.0
9+
10+
RUN set -eux; \
11+
dpkgArch="$(dpkg --print-architecture)"; \
12+
case "${dpkgArch##*-}" in \
13+
amd64) rustArch='x86_64-unknown-linux-gnu'; rustupSha256='6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d' ;; \
14+
armhf) rustArch='armv7-unknown-linux-gnueabihf'; rustupSha256='3c4114923305f1cd3b96ce3454e9e549ad4aa7c07c03aec73d1a785e98388bed' ;; \
15+
arm64) rustArch='aarch64-unknown-linux-gnu'; rustupSha256='1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2' ;; \
16+
i386) rustArch='i686-unknown-linux-gnu'; rustupSha256='0a6bed6e9f21192a51f83977716466895706059afb880500ff1d0e751ada5237' ;; \
17+
ppc64el) rustArch='powerpc64le-unknown-linux-gnu'; rustupSha256='079430f58ad4da1d1f4f5f2f0bd321422373213246a93b3ddb53dad627f5aa38' ;; \
18+
s390x) rustArch='s390x-unknown-linux-gnu'; rustupSha256='e7f89da453c8ce5771c28279d1a01d5e83541d420695c74ec81a7ec5d287c51c' ;; \
19+
*) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
20+
esac; \
21+
url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init"; \
22+
wget "$url"; \
23+
echo "${rustupSha256} *rustup-init" | sha256sum -c -; \
24+
chmod +x rustup-init; \
25+
./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch}; \
26+
rm rustup-init; \
27+
chmod -R a+w $RUSTUP_HOME $CARGO_HOME; \
28+
rustup --version; \
29+
cargo --version; \
30+
rustc --version;

1.79.0/bookworm/slim/Dockerfile

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
FROM debian:bookworm-slim
2+
3+
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
4+
5+
ENV RUSTUP_HOME=/usr/local/rustup \
6+
CARGO_HOME=/usr/local/cargo \
7+
PATH=/usr/local/cargo/bin:$PATH \
8+
RUST_VERSION=1.79.0
9+
10+
RUN set -eux; \
11+
apt-get update; \
12+
apt-get install -y --no-install-recommends \
13+
ca-certificates \
14+
gcc \
15+
libc6-dev \
16+
wget \
17+
; \
18+
dpkgArch="$(dpkg --print-architecture)"; \
19+
case "${dpkgArch##*-}" in \
20+
amd64) rustArch='x86_64-unknown-linux-gnu'; rustupSha256='6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d' ;; \
21+
armhf) rustArch='armv7-unknown-linux-gnueabihf'; rustupSha256='3c4114923305f1cd3b96ce3454e9e549ad4aa7c07c03aec73d1a785e98388bed' ;; \
22+
arm64) rustArch='aarch64-unknown-linux-gnu'; rustupSha256='1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2' ;; \
23+
i386) rustArch='i686-unknown-linux-gnu'; rustupSha256='0a6bed6e9f21192a51f83977716466895706059afb880500ff1d0e751ada5237' ;; \
24+
ppc64el) rustArch='powerpc64le-unknown-linux-gnu'; rustupSha256='079430f58ad4da1d1f4f5f2f0bd321422373213246a93b3ddb53dad627f5aa38' ;; \
25+
s390x) rustArch='s390x-unknown-linux-gnu'; rustupSha256='e7f89da453c8ce5771c28279d1a01d5e83541d420695c74ec81a7ec5d287c51c' ;; \
26+
*) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
27+
esac; \
28+
url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init"; \
29+
wget "$url"; \
30+
echo "${rustupSha256} *rustup-init" | sha256sum -c -; \
31+
chmod +x rustup-init; \
32+
./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch}; \
33+
rm rustup-init; \
34+
chmod -R a+w $RUSTUP_HOME $CARGO_HOME; \
35+
rustup --version; \
36+
cargo --version; \
37+
rustc --version; \
38+
apt-get remove -y --auto-remove \
39+
wget \
40+
; \
41+
rm -rf /var/lib/apt/lists/*;

1.79.0/bullseye/Dockerfile

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
FROM buildpack-deps:bullseye
2+
3+
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
4+
5+
ENV RUSTUP_HOME=/usr/local/rustup \
6+
CARGO_HOME=/usr/local/cargo \
7+
PATH=/usr/local/cargo/bin:$PATH \
8+
RUST_VERSION=1.79.0
9+
10+
RUN set -eux; \
11+
dpkgArch="$(dpkg --print-architecture)"; \
12+
case "${dpkgArch##*-}" in \
13+
amd64) rustArch='x86_64-unknown-linux-gnu'; rustupSha256='6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d' ;; \
14+
armhf) rustArch='armv7-unknown-linux-gnueabihf'; rustupSha256='3c4114923305f1cd3b96ce3454e9e549ad4aa7c07c03aec73d1a785e98388bed' ;; \
15+
arm64) rustArch='aarch64-unknown-linux-gnu'; rustupSha256='1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2' ;; \
16+
i386) rustArch='i686-unknown-linux-gnu'; rustupSha256='0a6bed6e9f21192a51f83977716466895706059afb880500ff1d0e751ada5237' ;; \
17+
ppc64el) rustArch='powerpc64le-unknown-linux-gnu'; rustupSha256='079430f58ad4da1d1f4f5f2f0bd321422373213246a93b3ddb53dad627f5aa38' ;; \
18+
s390x) rustArch='s390x-unknown-linux-gnu'; rustupSha256='e7f89da453c8ce5771c28279d1a01d5e83541d420695c74ec81a7ec5d287c51c' ;; \
19+
*) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
20+
esac; \
21+
url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init"; \
22+
wget "$url"; \
23+
echo "${rustupSha256} *rustup-init" | sha256sum -c -; \
24+
chmod +x rustup-init; \
25+
./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch}; \
26+
rm rustup-init; \
27+
chmod -R a+w $RUSTUP_HOME $CARGO_HOME; \
28+
rustup --version; \
29+
cargo --version; \
30+
rustc --version;

1.79.0/bullseye/slim/Dockerfile

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
FROM debian:bullseye-slim
2+
3+
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
4+
5+
ENV RUSTUP_HOME=/usr/local/rustup \
6+
CARGO_HOME=/usr/local/cargo \
7+
PATH=/usr/local/cargo/bin:$PATH \
8+
RUST_VERSION=1.79.0
9+
10+
RUN set -eux; \
11+
apt-get update; \
12+
apt-get install -y --no-install-recommends \
13+
ca-certificates \
14+
gcc \
15+
libc6-dev \
16+
wget \
17+
; \
18+
dpkgArch="$(dpkg --print-architecture)"; \
19+
case "${dpkgArch##*-}" in \
20+
amd64) rustArch='x86_64-unknown-linux-gnu'; rustupSha256='6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d' ;; \
21+
armhf) rustArch='armv7-unknown-linux-gnueabihf'; rustupSha256='3c4114923305f1cd3b96ce3454e9e549ad4aa7c07c03aec73d1a785e98388bed' ;; \
22+
arm64) rustArch='aarch64-unknown-linux-gnu'; rustupSha256='1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2' ;; \
23+
i386) rustArch='i686-unknown-linux-gnu'; rustupSha256='0a6bed6e9f21192a51f83977716466895706059afb880500ff1d0e751ada5237' ;; \
24+
ppc64el) rustArch='powerpc64le-unknown-linux-gnu'; rustupSha256='079430f58ad4da1d1f4f5f2f0bd321422373213246a93b3ddb53dad627f5aa38' ;; \
25+
s390x) rustArch='s390x-unknown-linux-gnu'; rustupSha256='e7f89da453c8ce5771c28279d1a01d5e83541d420695c74ec81a7ec5d287c51c' ;; \
26+
*) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
27+
esac; \
28+
url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init"; \
29+
wget "$url"; \
30+
echo "${rustupSha256} *rustup-init" | sha256sum -c -; \
31+
chmod +x rustup-init; \
32+
./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch}; \
33+
rm rustup-init; \
34+
chmod -R a+w $RUSTUP_HOME $CARGO_HOME; \
35+
rustup --version; \
36+
cargo --version; \
37+
rustc --version; \
38+
apt-get remove -y --auto-remove \
39+
wget \
40+
; \
41+
rm -rf /var/lib/apt/lists/*;

Dockerfile-alpine.template

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
FROM alpine:%%TAG%%
22

3+
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
4+
35
RUN apk add --no-cache \
46
ca-certificates \
57
gcc

Dockerfile-debian.template

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
FROM buildpack-deps:%%DEBIAN-SUITE%%
22

3+
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
4+
35
ENV RUSTUP_HOME=/usr/local/rustup \
46
CARGO_HOME=/usr/local/cargo \
57
PATH=/usr/local/cargo/bin:$PATH \

Dockerfile-slim.template

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
FROM debian:%%DEBIAN-SUITE%%-slim
22

3+
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
4+
35
ENV RUSTUP_HOME=/usr/local/rustup \
46
CARGO_HOME=/usr/local/cargo \
57
PATH=/usr/local/cargo/bin:$PATH \

0 commit comments

Comments
 (0)