我正在尝试从 Mac M1 Silicon 为 Rust 服务生成一个映像,以便在 Kubernetes 集群中的 x86_64 机器上运行。
这是我的 Dockerfile:
FROM rust:latest AS builder
RUN rustup target add x86_64-unknown-linux-musl
RUN apt update && apt install -y musl-tools musl-dev
RUN apt-get install -y build-essential
RUN yes | apt install gcc-x86-64-linux-gnu
# Create appuser
ENV USER=my-user
ENV UID=10001
RUN adduser \
--disabled-password \
--gecos "" \
--home "/nonexistent" \
--shell "/sbin/nologin" \
--no-create-home \
--uid "${UID}" \
"${USER}"
WORKDIR /my-service
COPY ./ .
RUN cargo build --target x86_64-unknown-linux-musl --release …Run Code Online (Sandbox Code Playgroud) 此代码引发关于从函数返回引用的错误:
fn sha512_256_digest(str: &[u8]) -> &[u8] {
let x = digest::digest(&digest::SHA512_256, str);
x.as_ref()
}
Run Code Online (Sandbox Code Playgroud)
在这里返回x的as_ref()值的正确方法是什么?