我正在检查我的sqlite3版本,使用:
python -c "import sqlite3; print(sqlite3.sqlite_version)"
字符串
在我的本地机器上,这提示我3.41.1。然而,一旦我构建了我的docker镜像,如果我这样做:
sudo docker exec -t <docker_image_number> python -c "import sqlite3; print(sqlite3.sqlite_version)"
型
我得到3.34.1。
为了构建docker,我从python运行:3.9.3。我已经读到sqlite3是python本身的库,根据python版本/他们用于编译的版本更新。我甚至尝试过python:3.16.0,但我仍然得到3.34.1。我希望至少有sqlite3 3.35。我如何更新这个库?对于我的docker,我做了RUN apt-get update
和RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
,但要求是我的conda库的冻结,其中sqlite3是3.41.1
FROM python:3.9.3
# from compose args
ARG BITBUCKET_APP_PASS
# Variable arguments
WORKDIR /code
#Install requirements
#COPY ./.env ./.env
COPY ./requirements.txt /code/requirements.txt
RUN apt-get update
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
#Copy code into the container
COPY ./django_app/ /code/app/src/
COPY ./init_app_in_docker.sh /code/app/src/init_app_in_docker.sh
COPY ./.env ./code/app/src/.env
#Start the app
WORKDIR /code/app/src/
CMD ./init_app_in_docker.sh
型
1条答案
按热度按时间mlmc2os51#
我正在构建一个flask应用程序,它需要sqlite3版本也是3.35+。对于我的docker镜像,我使用python 3.11,这带来了sqlite3版本3.40,这对我来说很好。这些是Dockerfile的第一行
字符串
我将我的pip降级到21.3.1,以访问一些在更高版本中没有索引的库,请随意忽略。