「求助」DockerFile 丢失自定义 css 文件

查看 141|回复 14
作者:owltacklejaguar   
是这样的,用 python 写了一个小工具,本地开发时使用 css 外网 url ,项目部署在内网且不出网,无法访问 css 的外网 url
本地 tree
.
├── Dockerfile
├── app.py
├── docker-compose.yml
├── env.env
├── requirements.txt
├── resource
│   ├── bootstrap.min.css
│   ├── bootstrap.min.js
│   └── jquery-3.5.1.min.js
└── templates
    ├── index.html
    └── login.html
   
resource 目录是我保存的离线 css 和 js 文件
Dockerfile 内容如下
FROM python:3.8
MAINTAINER -
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["python", "app.py"]
请问我如何修改 Dokcerfile 把 resource 目录中的资源文件打包进去呢?

CSS, dockerfile, Python, resource

aru   
已经打包进去了
无法访问 css 的外网 url 那是另外一个问题,和你的 dockerfile 无关
aru   
纯内网访问需要将相关的资源都下载回来,还有修改引用的 url ,将它们都改为内网相对路径
liyunyang   
1 、RUN pip install --no-cache-dir -r requirements.txt 不是需要外网吗?你确定你在内网环境能下载?
2 、MAINTAINER - 的意义是啥。。是你去掉了是吗
3 、COPY . . 已经把所有的文件和文件夹复制到 /app 下面了,你是要怎么打包进去?
pota   
COPY . . 不是已经放进去了吗。如楼上所说。你外部可以访问到容器内部的资源吗?
aru   
我大概明白 OP 的意思了
应该是 index.html 和 login 的 html 里面原来引用的是外网的 css 文件,就是 resource 内容里面 3 个文件
现在他想不依赖外网,直接这个容器里面就提供了。
假设 OP 用的是 flask ,配置一下 static_url_path 、static_folder 就可以了。
https://www.jianshu.com/p/5722fef5fa96
zjsxwc   
COPY . . 已经放进去了
没有 nginx 么,直接 python 把静态资源服务也一起提供好了。
owltacklejaguar
OP
  
@aru #2 路径修改为../、/、resource 都测试过,访问不到
owltacklejaguar
OP
  
@liyunyang #3 1.在外网打包的镜像,导入到内网
2.我去掉了
3.页面显示丢失资源文件,怀疑是没有打包进去
owltacklejaguar
OP
  
@pota #4 不可以
您需要登录后才可以回帖 登录 | 立即注册

返回顶部