| |
| FROM openjdk:17-jdk-slim |
|
|
| |
| WORKDIR /app |
|
|
| ARG LANGTOOL_VERSION="6.6" |
|
|
| |
| ARG FASTTEXT_MODEL_NAME="geowac_tokens_sg_300_5_2020-400K-100K-300.bin" |
| ARG FASTTEXT_MODEL_URL="https://github.com/avidale/compress-fasttext/releases/download/gensim-4-draft/${FASTTEXT_MODEL_NAME}" |
| |
|
|
| |
| ARG LANGTOOL_DIR_NAME="LanguageTool-${LANGTOOL_VERSION}" |
|
|
| |
| ENV LANGTOOL_VERSION=${LANGTOOL_VERSION} |
| ENV FASTTEXT_MODEL_NAME=${FASTTEXT_MODEL_NAME} |
| ENV LANGTOOL_DIR_NAME=${LANGTOOL_DIR_NAME} |
| |
|
|
| |
| RUN apt-get update && \ |
| apt-get install -y --no-install-recommends wget unzip && \ |
| rm -rf /var/lib/apt/lists/* |
|
|
| |
| RUN echo "Downloading LanguageTool zip..." && \ |
| wget https://languagetool.org/download/LanguageTool-${LANGTOOL_VERSION}.zip -O languagetool.zip |
|
|
| |
| |
| RUN echo "Downloading FastText model from GitHub Releases..." && \ |
| wget "${FASTTEXT_MODEL_URL}" -O "/app/${FASTTEXT_MODEL_NAME}" |
| |
|
|
| |
| RUN echo "Unzipping LanguageTool..." && \ |
| unzip languagetool.zip -d /app/ && \ |
| rm languagetool.zip |
|
|
| |
| RUN echo "Moving FastText model (.bin) to LanguageTool directory..." && \ |
| mv "/app/${FASTTEXT_MODEL_NAME}" "/app/${LANGTOOL_DIR_NAME}/" |
|
|
| |
| WORKDIR "/app/${LANGTOOL_DIR_NAME}" |
|
|
| |
| RUN echo "Creating server.properties configuration file..." && \ |
| echo "fasttextModel=${FASTTEXT_MODEL_NAME}" > server.properties && \ |
| echo "motherTongue=ru" >> server.properties |
|
|
|
|
| |
| RUN echo "Listing contents of WORKDIR: $(pwd)" |
| RUN ls -la ./ |
| RUN echo "Listing contents of libs directory: ./libs/" |
| RUN ls -la ./libs/ || true |
| RUN echo "Contents of server.properties:" |
| RUN cat server.properties |
| |
|
|
| EXPOSE 8010 |
|
|
| |
| CMD java -Xmx8g -cp "*:libs/*" org.languagetool.server.HTTPServer \ |
| --config server.properties \ |
| --allow-origin '*' \ |
| --public \ |
| --port 8010 |
|
|