【发布时间】:2021-12-09 12:07:00
【问题描述】:
我正在处理一个对 Lua 项目进行 lints 的 Docker 映像,容器可以通过卷访问该映像,Dockerfile 看起来像这样(它的相关部分):
FROM debian:bullseye-slim
SHELL ["/bin/bash", "-O", "globstar", "-c"]
COPY --from=builder /usr/local/bin /usr/local/bin
COPY lint.sh /
RUN apt-get update && \
apt-get upgrade -y && \
apt-get install --no-install-recommends gcc=4:10.2.1-1 luarocks=2.4.2+dfsg-1.1 -y && \
rm -rf /var/lib/apt/lists/* && \
luarocks install luacheck
CMD PROJECT_DIRECTORY=$(ls -d */ | grep -vE "bin|boot|dev|etc|home|lib|lib64|media|mnt|opt|proc|root|run|sbin|srv|sys|tmp|usr|var") && \
cd $PROJECT_DIRECTORY && \
stylua ./**/*.lua && \
lua-format -i ./**/*.lua && \
luacheck ./**/*.lua && \
selene ./**/*.lua
一旦构建了镜像,容器就会像这样被调用:
docker run -v $PWD:/<any-directory> <image>
问题是,我目前无法从容器内部获取<any-directory> 名称,而且我不想在运行容器时传递额外的参数,有什么实用的吗?怎么办?
【问题讨论】:
标签: docker dockerfile docker-volume