Docker for HOME目录的nltk?
我需要包含应该从$HOME/nltk_data
读取的nltk
库
在本地机器上,我只是跑步
python -m nltk.downloader -d $HOME/nltk_data all
但我不知道如何得到这个在Dockerfile
工作
RUN python -m nltk.downloader -d $HOME/nltk_data all
会工作?
如何在Docker容器中设置$HOME
?
我看到这些消息
[nltk_data] | Downloading package abc to //nltk_data... [nltk_data] | Unzipping corpora/abc.zip. [nltk_data] | Downloading package alpino to //nltk_data... [nltk_data] | Unzipping corpora/alpino.zip. [nltk_data] | Downloading package biocreative_ppi to //nltk_data... [nltk_data] | Unzipping corpora/biocreative_ppi.zip.
您需要创build自己的并设置$ HOME envvariables。 这里是如何:
RUN mkdir /user ENV HOME /user WORKSPACE /user
这是一个testing:
docker run -i -t ubuntu bash echo $HOME root@7fe16f3e86bc:/# echo $HOME /
根用户的主目录也被设置/
所以你应该能够运行:
RUN python -m nltk.downloader -d /nltk_data all
另外,您也可以使用下面的USER命令来设置所有后续命令的默认用户。 这将意味着所有后续命令映射到/ home / bob的$ HOME
RUN useradd --user-group --system --home-dir /home/bob bob USER bob RUN python -m nltk.downloader -d $HOME/nltk_data all