Разверните приложение rasa в dokku (docker)

Я хочу развернуть свое приложение rasa в Dokku (= heroku-like + docker).

Для этого я добавил в свое приложение Dockerfile:

FROM rasa/rasa:latest-spacy-en

RUN rasa train --domain domain.yml --data data --out models

EXPOSE 5100

CMD [ "rasa", "run", "-m", "models", "--enable-api" ]

Образ докера rasa успешно получен, но я получил эту ошибку при выполнении команды rasa train:

Step 2/4 : RUN rasa train --data data
 ---> Running in f263870fd730
The config file 'config.yml' is missing mandatory parameters: 'policies'. Add missing parameters to config file and try again.
remote: The command '/bin/sh -c rasa train --data data' returned a non-zero code: 1

Я попытался создать явную папку для приложения со следующим Dockerfile:

FROM rasa/rasa:latest-spacy-en

RUN mkdir -p /usr/src/app

WORKDIR /usr/src/app

COPY . /usr/src/app

RUN rasa train --domain domain.yml --data data --out models

EXPOSE 5100

CMD [ "rasa", "run", "-m", "models", "--enable-api" ]

Но я получил такую ​​ошибку:

Step 2/7 : RUN mkdir -p /usr/src/app
 ---> Running in f78470eb6d93
mkdir: cannot create directory ‘/usr/src/app’: Permission denied
remote: The command '/bin/sh -c mkdir -p /usr/src/app' returned a non-zero code: 1

Вот мой config.yml файл:

# Configuration for Rasa NLU.

# https://rasa.com/docs/rasa/nlu/components/
language: fr
pipeline: pretrained_embeddings_spacy

# Configuration for Rasa Core.
# https://rasa.com/docs/rasa/core/policies/
policies:
  - name: MemoizationPolicy
  - name: KerasPolicy
  - name: MappingPolicy
  - name: FormPolicy

Любые идеи?

Большое спасибо за вашу помощь! Тьерри


person Thierry Templier    schedule 27.01.2020    source источник


Ответы (1)


Похоже, у вас нет разрешения на создание каталога, вы можете попробовать запустить Dockerfile от имени пользователя root? Например.

FROM rasa/rasa:latest-spacy-en

USER root

RUN mkdir -p /usr/src/app

WORKDIR /usr/src/app

COPY . /usr/src/app

RUN rasa train --domain domain.yml --data data --out models

EXPOSE 5100

CMD [ "rasa", "run", "-m", "models", "--enable-api" ]

По умолчанию мы не работаем с правами root, поэтому почему у пользователя нет разрешения на создание папки.

person Ella Rohm-Ensing    schedule 06.02.2020