关于 GitHub 一些问题 【已解决】
最近呢 遇到一些小问题
docker 访问有点困难,根据一些大佬的视频和教学,我就把docker的一些容器镜像放到了阿里云,
放镜像的时候看到一些大佬的代码比较老,我就复刻到自己的GitHub下了,想自己部署一下,
现在呢,我就想着把代码改一下,源文件为 Dockerfile 文件,里面有一段文件的下载链接,
文件的下载链接是从官网获取后,自己需要手动修改一下,
我在想:有没有什么办法,让这个文件自动获取文件的下载链接
以下是源码(由于一些原因 我隐藏了一下链接)
FROM jlesage/baseimage-gui:ubuntu-18.04
ENV APP_NAME "demo"
ENV APP_VERSION "1.0.0.0" //此处为版本号
ENV USER_ID 0
ENV GROUP_ID 0
ENV ENABLE_CJK_FONT 1
ENV DISPLAY_WIDTH "1920"
ENV DISPLAY_HEIGHT "1080"
RUN apt-get update -y && apt-get upgrade -y && \
apt-get install -y curl locales && \
export LANG=zh_CN.UTF-8 && locale-gen zh_CN.UTF-8 && \
curl https://文件链接v${APP_VERSION}.deb -o /tmp/文件名v${APP_VERSION}.deb && \
dpkg -i /tmp/文件名v${APP_VERSION}.deb
COPY startapp.sh /startapp.sh
官网下载链接
请求后的结果
{"state":true,"code":0,"message":"","data":{"version_code":"1.0.0.0","created_time":1715671736,"version_url":"https:\/\/down.链接.com\/client\/链接\/lin\/文件名v1.0.0.0.deb"}}
求求大佬 出个小小的建议 谢谢大佬啦
-
Docker
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口
curl 模拟请求,sed 做响应内容匹配,把地址匹配出来然后修改。
方法一:使用环境变量传递下载链接
一种简单的方法是将下载链接作为环境变量传递给 Docker 构建过程。这样可以将链接提前定义好,并在 Dockerfile 中使用。例如:
在这个例子中,使用了
DOWNLOAD_URL
环境变量来定义下载链接,并在RUN
指令中使用 curl 命令下载文件。你可以在构建容器时通过设置环境变量来传递不同的下载链接。方法二:通过构建参数传递下载链接
另一种方法是使用 Docker 的构建参数来传递下载链接。这种方法允许在构建时动态指定链接,但需要使用
--build-arg
参数来传递。例如,你可以修改 Dockerfile 如下:
然后,在构建容器时,使用
--build-arg
参数传递DOWNLOAD_URL
:这样就可以在每次构建时指定不同的下载链接。 你试试 哪个好用 记得反馈