小编Rob*_*her的帖子

Docker 撰写安装requirements.txt

在我的 docker 镜像中,我克隆了 git master 分支来检索代码。我在开发环境中使用 docker-compose 并使用卷运行我的容器。从我的 python requirements.txt 文件安装新项目需求时遇到了一个问题。在开发环境中,它永远不会在开发环境中安装新的需求,因为在重新构建镜像时,最新的代码是从 github 中拉取的。

下面是我的 dockerfile 的一个例子:

FROM base

# Clone application
RUN git clone repo-url
# Install application requirements
RUN pip3 install -r app/requirements.txt

# ....
Run Code Online (Sandbox Code Playgroud)

这是我的撰写文件:

myapp:
    image: development
    env_file: .env
    ports:
        - "8000:80"
    volumes:
        - .:/home/app

    command: python3 manage.py runserver 0.0.0.0:8000
Run Code Online (Sandbox Code Playgroud)

有没有办法在开发后安装新添加的需求?

python git docker docker-compose

12
推荐指数
2
解决办法
2万
查看次数

Django Redis LPUSH / RPUSH

我正在使用django-redis后端和django.core.cache.cache模块。django缓存模块似乎不支持推送到列表和处理某些数据结构的适当功能。

隐含的实现用于更新Django缓存模块中的列表:

my_list = cache.get('my_list')
my_list.append('my value')

cache.set('my_list', my_list)
Run Code Online (Sandbox Code Playgroud)

这种方法效率不高,因为整个列表都已加载到应用程序服务器的内存中。

Redis支持LPUSH / RPUSH命令以动态更新列表。但是,看起来这些方法在django缓存模块中不可用。

官方的python redis客户端似乎实现了这些方法。django不提供此实现有什么原因吗?我出于好奇而问。我可能错过了一些细节吗?

python django caching redis django-redis

5
推荐指数
1
解决办法
1391
查看次数

标签 统计

python ×2

caching ×1

django ×1

django-redis ×1

docker ×1

docker-compose ×1

git ×1

redis ×1