一悯嗓、Dockerfile文件
CoreNLP是斯坦福(Stanford) NLP組(Group)用Java開發(fā)的自然語言處理包拒迅,開發(fā)中調用采用docker形式提供服務骚秦,是最方便和對原有程序解耦最徹底的。
Dockerfile:
FROM java:jre-alpine
RUN apk add --update --no-cache \
unzip \
wget
COPY stanford-corenlp-chinese-4.4.0.zip /
RUN unzip stanford-corenlp-chinese-4.4.0.zip
WORKDIR stanford-corenlp-4.4.0
RUN export CLASSPATH="`find . -name '*.jar'`"
ENV PORT 9000
EXPOSE $PORT
CMD java -cp "*" -mx4g edu.stanford.nlp.pipeline.StanfordCoreNLPServer
其中坪它, stanford-corenlp-chinese-4.4.0.zip 是和Dockerfile放在同一個目錄下骤竹,是從https://stanfordnlp.github.io/CoreNLP/download.html 下載,
將2下載的stanford-corenlp-4.4.0-models-chinese.jar 放入1的壓縮包中往毡,就是新的stanford-corenlp-chinese-4.4.0.zip蒙揣。
github上下載非常慢,我已提交到百度網盤开瞭,方便大家下載:
鏈接: https://pan.baidu.com/s/1_9pSxYaH9NVCTZkl6bTvlg 提取碼: 8p6o
二懒震、制作鏡像
make.sh:
docker build -t cbbing/corenlp_with_chinese:4.4.0 .
執(zhí)行過程:
MacBook-Pro CoreNLP % sh make.sh
[+] Building 15.9s (11/11) FINISHED
=> [internal] load build definition from Dockerfile 0.1s
=> => transferring dockerfile: 37B 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [internal] load metadata for docker.io/library/java:jre-alpine 15.3s
=> [internal] load build context 0.4s
=> => transferring context: 59B 0.0s
=> [1/6] FROM docker.io/library/java:jre-alpine@sha256:6a8cbe4335d1a5711a52912b684e30d6dbfab681a6733440ff7241b05a5deefd 0.0s
=> CACHED [2/6] RUN apk add --update --no-cache unzip wget 0.0s
=> CACHED [3/6] COPY stanford-corenlp-chinese-4.4.0.zip / 0.0s
=> CACHED [4/6] RUN unzip stanford-corenlp-chinese-4.4.0.zip 0.0s
=> CACHED [5/6] WORKDIR stanford-corenlp-4.4.0 0.0s
=> CACHED [6/6] RUN export CLASSPATH="`find . -name '*.jar'`" 0.0s
=> exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:8ff3dc6cb044148a34ae57fd50be32cf0d74ed5f7c5e1cdd51297d36c549a8c5 0.0s
=> => naming to docker.io/cbbing/corenlp_with_chinese:4.4.0
三、dockerhub下載
CoreNLP4.4.0支持中文嗤详,我已經提交到dockerhub个扰,可以直接下載使用。地址為:https://hub.docker.com/repository/docker/cbbing/corenlp_with_chinese
四葱色、CoreNLP使用
啟動Docker:
docker run -d -p 9004:9000 --name corenlp_c cbbing/corenlp_with_chinese:4.4.0
訪問本機的9004端口递宅,例如http://192.168.3.11:9004 (不能用0.0.0.0:9004)
輸入中文文本:
5月1日,由國藥集團中國生物北京生物制品研究所研發(fā)的奧密克戎變異株新冠病毒滅活疫苗臨床研究正式在杭州啟動,并于當天完成第一劑接種办龄。
當然烘绽,英文也沒問題,不過語言必須也得選Chinese俐填,沒搞明白這個邏輯:
注意安接,Docker容器分配內存至少4G,如果少了可能容器會因內存不足被killed英融。