4.1 KiB
Supported tags and respective Dockerfile links
1.19.0-stretch,1-stretch,1.19-stretch,stretch,1.19.0,1,1.19,latest(1.19.0/stretch/Dockerfile)1.19.0-jessie,1-jessie,1.19-jessie,jessie(1.19.0/jessie/Dockerfile)
Quick reference
-
Where to get help:
the Docker Community Forums, the Docker Community Slack, or Stack Overflow -
Where to file issues:
https://github.com/rust-lang-nursery/docker-rust/issues -
Maintained by:
the Rust Project developers -
Published image artifact details:
repo-info repo'srepos/rust/directory (history)
(image metadata, transfer size, etc) -
Image updates:
official-images PRs with labellibrary/rust
official-images repo'slibrary/rustfile (history) -
Source of this description:
docs repo'srust/directory (history) -
Supported Docker versions:
the latest release (down to 1.6 on a best-effort basis)
What is Rust?
Rust is a systems programming language sponsored by Mozilla Research. It is designed to be a "safe, concurrent, practical language", supporting functional and imperative-procedural paradigms. Rust is syntactically similar to C++, but is designed for better memory safety while maintaining performance.
How to use this image
Start a Rust instance running your app
The most straightforward way to use this image is to use a Rust container as both the build and runtime environment. In your Dockerfile, writing something along the lines of the following will compile and run your project:
FROM rust:1.19.0
WORKDIR /usr/src/myapp
COPY . .
RUN cargo install
CMD ["myapp"]
Then, build and run the Docker image:
$ docker build -t my-rust-app .
$ docker run -it --rm --name my-running-app my-rust-app
Compile your app inside the Docker container
There may be occasions where it is not appropriate to run your app inside a container. To compiler, but not run your app inside the Docker instance, you can write something like:
$ docker run --rm --user "$(id -u)":"$(id -g)" -v "$PWD":/usr/src/myapp -w /usr/src/myapp rust:1.19.0 cargo build --release
This will add your current directory, as a volume, to the container, set the working directory to the volume, and run the command cargo build --release. This tells Cargo, Rust's build system, to compile the crate in myapp and output the executable to target/release/myapp.
License
View license information for the software contained in this image.
