简体   繁体   English

使用 rust 二进制文件运行 docker 映像时出现权限被拒绝错误

[英]Permission denied error when running docker image with rust binary

I am getting permission denied when trying to run a small rust cli app via a docker container.尝试通过 docker 容器运行小型 rust cli 应用程序时,我的权限被拒绝。 I can build the image fine, but when I try to run it I get:我可以很好地构建图像,但是当我尝试运行它时,我得到:

docker: Error response from daemon: OCI runtime create failed: 
container_linux.go:380: 
starting container process caused: exec: "./async-scraper": permission denied: 
unknown.

Dockerfile Dockerfile

FROM clux/muslrust:1.56.1-stable as builder
WORKDIR /volume
COPY . .
RUN cargo build --release

FROM alpine
COPY --from=builder /volume/target/x86_64-unknown-linux-musl/release ./async-scraper
RUN chmod +x ./async-scraper
ENTRYPOINT [ "./async-scraper","$@"]

Run cmd运行 cmd

sudo docker run --rm -it paul-k/web_scraper:latest - 
https://example-url-arg/

Cargo.toml货运.toml

[package]
name = "async_web_scraper"
version = "0.1.0"
edition = "2018"

[[bin]]
name = "rat"
path = "src/main.rs"

[lib]
name = "async_scraper"

[dependencies]
select = "0.6.0-alpha.1"
reqwest = { version = "0.11.6", features = ["json"] }
tokio = { version = "1", features = ["full"] }
futures = "0.3.1"
lazy_static = "1.4.0"
url = "2.2.2"
error-chain = "0.12.4"
async-trait = "0.1.51"
simple-error = "0.1.9"
anyhow = "1.0"
log = "0.4.14"
env_logger = "0.9.0"
thiserror = "1.0.30"

[dev-dependencies]
httpmock = "0.6"
tokio-test = "*"

You are trying to execute a directory "/volume/target/x86_64-unknown-linux-musl/release" .您正在尝试执行目录"/volume/target/x86_64-unknown-linux-musl/release" I advise you use cargo install :我建议你使用cargo install

RUN cargo install --path . --root /volume

# ...

COPY --from=builder /volume/bin/rat /volume/rat
ENTRYPOINT [ "./rat","$@"]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 将 Go 服务器作为 Docker 容器运行时出现权限被拒绝错误 - Permission denied error when running Go server as Docker container 用卷重建Docker映像时权限被拒绝错误 - Permission denied error when rebuilding docker image with volume 获取错误:使用 jenkins 构建 docker 映像时权限被拒绝 - Get error: permission denied when building docker image using jenkins 运行容器时权限被拒绝(docker 1.12.5) - Permission denied when running a container (docker 1.12.5) 更改Docker映像文件夹时权限被拒绝 - Permission denied when changing docker image folder 使用Docker导入时权限被拒绝错误 - Permission denied error when using docker import 运行 Golang 的 docker 镜像失败,出现错误“启动容器进程导致:exec:“/路径”:权限被拒绝” - Running a docker Image of Golang failed, with error 'starting container process caused: exec: "/path": permission denied' 使用teamcity-docker-agent时运行docker-权限被拒绝 - Running docker when using teamcity-docker-agent - permission denied 运行 influx arm64 docker 映像作为容器时出现 Permission denied 错误 - Permission denied error while running influx arm64 docker image as a container 在 Docker 图像错误中运行 airflow 命令:[Errno 13] Permission denied: '/opt/airflow/logs/scheduler/ - Running airflow commands in Docker image error: [Errno 13] Permission denied: '/opt/airflow/logs/scheduler/
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM