tensorflow 如何在Tensorman中安装其他依赖项

cld4siwp  于 2023-10-23  发布在  其他
关注(0)|答案(1)|浏览(91)

我在popos 20.04 LTS上,我想使用Tensorman用于tenserflow/python。我是docker的新手,我想安装额外的依赖项,例如使用默认图像我可以使用这些命令运行jupyter notebook-

tensorman run -p 8888:8888 --gpu --python3 --jupyter  bash

jupyter notebook --ip=0.0.0.0 --no-browser

但是现在我必须安装额外的依赖项,例如,如果我想安装jupytertheme,我怎么能改变这一点呢?我试图直接在docker容器中安装它,但它不工作。
这个issue看起来和我的问题很相似,但是没有解释我如何在tensorman中创建自定义图像。

izkcnapc

izkcnapc1#

有两种方法可以安装依赖项。
1.创建自定义映像,安装依赖项并保存它。
1.使用--root标记获得对容器的root访问权限,安装依赖项并使用它们。

自定义镜像

如果您正在处理一个项目,并希望为该项目提供一些依赖项,或者只是想保存所有您喜欢的依赖项,则可以根据该项目创建自定义映像,并将其保存,以便以后在项目中使用该映像。
现在,一旦你准备好了,使用这个命令,

tensorman run -p 8888:8888 --root --python3 --gpu --jupyter --name CONTAINER_NAME  bash

其中CONTAINER_NAME是容器的名称,您可以给予任何您想要的名称,-p设置端口(您可以在docker中搜索有关端口转发的信息)
现在你以root身份运行container,现在在container shell中使用。

# its always a good idea to update the apt, you can install packages from apt also
apt update

# install jupyterthemes
pip install jupyterthemes

# check if all your desired packages are installed
pip list

现在是时候保存你的形象了
打开一个新的终端并使用此命令保存您的图像

tensorman save CONTAINER_NAME IMAGE_NAME

CONTAINER_NAME应该是前面使用的那个,对于IMAGE_NAME,您可以根据自己的喜好进行选择。
现在您可以关闭终端使用tensorman list来检查您的自定义图像是否存在。要使用自定义图像,请使用

tensorman =IMAGE_NAME run -p 8888:8888 --gpu bash

# to use jupyter
jupyter notebook --ip=0.0.0.0 --no-browser

使用--root并安装依赖

现在你可能想知道,在一个普通的Notebook中,你甚至可以在Notebook内部安装依赖项,但tensorman却不是这样;这是因为我们没有以root身份运行它,因为如果我们以root身份运行它,主机中的导出文件也将使用root权限,这就是为什么避免使用--root标记是好的,但我们可以使用它来安装依赖项。安装后,你必须保存这个镜像(这不是必须的,虽然你也可以每次都安装它们),否则,安装的依赖项将丢失。
在自定义映像构建的最后一步中,请改用以下命令

# notice --root
tensorman =IMAGE_NAME run -p 8888:8888 --gpu --root bash

# to use jupyter, notice --allow-root
jupyter notebook --allow-root --ip=0.0.0.0 --no-browser

相关问题