成都网站建设设计

将想法与焦点和您一起共享

python镜像函数 python镜像库

【Python基础】PIP 镜像源配置轻松搞定

pip 是 python 必不可少的的包管理工具,但是要在国内用得爽,必须要配置镜像源。

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的五寨网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

有哪些镜像站可用,以及如何配置,网上都有很多分享了。

我常用的是  阿里云镜像站 。

这里有一点比较麻烦的地方,就是是 Linux 和 Windows 环境下的 pip 配置文件的名字和位置都不同,经常混淆。

今天就教大家一招,快速搞定:

执行完上面两条命令就可以啦。

pip config set 命令能自动把配置写入到用户对应的配置文件中:

[global]

index-url =

[install]

trusted-host=mirrors.aliyun.com

命令虽然方便,但是参数格式复杂,记住不太容易,要是想改一下也挺麻烦,

所以我们进一步了解一下细节。

“ 下面我以 Windows 系统为例,实际在 Linux 系统也是类似

查看配置

执行 pip config list 命令可以显示已经有了哪些配置:

pip config list

global.index-url=''

install.trusted-host='mirrors.aliyun.com'

带上一个 -v 选项:

pip config list -v

For variant 'global', will try loading 'C:\ProgramData\pip\pip.ini'

For variant 'user', will try loading 'C:\Users\davy\pip\pip.ini'

For variant 'user', will try loading 'C:\Users\davy\AppData\Roaming\pip\pip.ini'

For variant 'site', will try loading 'c:\users\davy\appdata\local\programs\python\python38\pip.ini'

global.index-url=''

install.trusted-host='mirrors.aliyun.com'

“ 这里有一点不太好的地方是不显示配置是在哪个文件里。

就把它尝试获取的配置文件名完整路径列出来了。前面的 global 和 user 和 site 分别表示配置文件生效的范围:

global - 全局,一般不用

user - 当前用户,推荐

site - 只针对某一个 python 解释器

可以看到 user 有两个地方,其中配置任何一个都是可以的。

有的网络文章推荐的手动创建文件地址是前面那个,但是 pip 默认创建的是后者。

编辑配置

在命令行直接执行 pip config edit 会自动为我们打开配置文件,但是在 Windows 环境下还不行:

pip config edit

ERROR: Could not determine editor to use.

需要手动指定一个编辑器,就用记事本就行了:

pip config edit  --editor notepad

“ Linux 系统中编辑器可以使用 vi,也可以是你习惯的其它编辑器

如果你从来没有设置过,它会报 找不到指定路径,这是因为相应的文件夹没有创建。

设置配置

通过 pip config set 命令可以直接设置配置项,它会自动创建没有的文件夹和文件。但是必须要给定一个配置项:

pip config set

ERROR: Got unexpected number of arguments, expected 2. (example: "pip config set [name] [value]")

我们随便写一个配置:

pip config set x.y z

Writing to C:\Users\davy\AppData\Roaming\pip\pip.ini

然后再执行上面的

pip config edit  --editor notepad

就能自动打开配置文件,把拷贝好的配置文件内容贴进去就可以啦。

Python项目打包为docker镜像并迁移

1.安装docker服务:

centos 下直接yum安装

yum install docker

2.修改docker仓库地址为国内:

3.编写Dockerfile, 如下:

4.制作镜像:

docker build -f Dockerfile -t blogapp:1.0 .

ps:

最后一个参数是.号,别忘了加

制作镜像可能是一个漫长的过程。。。

途中有问题会中止,需要检查问题并修改Dockerfile,然后重新开始。。。

5.查看制作的镜像:

docker images

6.运行镜像,创建镜像实例,即运行容器:

docker run -it -p 192.168.5.109:8080:8888 blogapp:1.0

可以看到,项目已经正常开启,浏览器可以正常访问:

7.导出镜像为tar包:

docker image save -o blogapp.tar blogapp:1.0

8.在新机导入tar包为镜像:

docker load blogapp.tar

9.查看新导入的镜像:

10.在新机运行镜像,后台开启容器:

docker run -it -p 192.168.5.110:8080:8888 blogapp:1.0

可以看到后台开启成功,浏览器访问新址:

如何制作一个定制的 Python 基础 Docker 镜像

目标:准备一个定制的 Python 基础镜像。基础镜像,通常为含最小功能的系统镜像,之后的应用镜像都以此为基础。

本项目代码维护在 DaoCloud/python-sample-base-image 项目中。

您可以在 GitHub 找到本项目并获取本文中所提到的所有脚本文件。

制作基础镜像

选择 Ubuntu 官方的 14.04 版本为我们依赖的系统镜像。

FROM ubuntu:trusty

因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,可以使用与官方镜像保持同步的 DaoCloud 境内镜像:

dockerfile

FROM daocloud.io/ubuntu:trusty

设置镜像的维护者,相当于镜像的作者或发行方。

MAINTAINER Captain Dao support@daocloud.io

用 RUN 命令调用 apt-get 包管理器安装 Python 环境所依赖的程序包。

安装依赖包相对比较固定,因此该动作应该尽量提前,这样做有助于提高镜像层的复用率。

安装完依赖后打扫卫生可以显著的减少镜像大小。

RUN apt-get update \

apt-get install -y python \

python-dev \

python-pip \

rm -rf /var/lib/apt/lists/*

以下是一个不建议的做法,原因是比上述命令多添加了一层镜像,然而并没有降低总镜像的体积。

dockerfile

RUN apt-get update \

apt-get install -y python \

python-dev \

python-pip

RUN rm -rf /var/lib/apt/lists/*

用 RUN 命令调用 mkdir 来准备一个干净的放置代码的目录。

RUN mkdir -p /app

指定其为当前的工作目录。

WORKDIR /app

指定暴露的容器内端口地址,最后设置默认启动命令。

EXPOSE 80

CMD ["bash"]

至此一个 Python 的基础镜像制作完毕,您可以在本地运行 docker build -t my-python-base . 来构建出这个镜像并命名为 my-python-base。

Python 家族成员众多,因此需要一个通用的基础镜像,并在此基础上根据需求进行定制。

由于国内网络环境的特殊,在本地运行 docker build 的时间会很长,并且有可能失败。推荐使用 DaoCloud Toolbox 和 DaoCloud 的云端 代码构建 功能。

完整 Dockerfile

# Ubuntu 14.04,Trusty Tahr(可靠的塔尔羊)发行版

FROM daocloud.io/ubuntu:trusty

# 道客船长荣誉出品

MAINTAINER Captain Dao support@daocloud.io

# APT 自动安装 PHP 相关的依赖包,如需其他依赖包在此添加

RUN apt-get update \

apt-get install -y python \

python-dev \

python-pip \

# 用完包管理器后安排打扫卫生可以显著的减少镜像大小

apt-get clean \

apt-get autoclean \

rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

# 配置默认放置 App 的目录

RUN mkdir -p /app

WORKDIR /app

EXPOSE 80

CMD ["bash"]

wph95


分享文章:python镜像函数 python镜像库
转载注明:http://chengdu.cdxwcx.cn/article/hpigdi.html