Rasa Docker - Adding Custom Dependencies Problems

Hello everyone,

I have a question about Rasa in Docker, I have to install the pymssql to connect Rasa to SQL Server, which without Docker works perfectly, but when trying to put everything in Docker I get the following error:

$ sudo docker run -v $ (pwd): / app rasabot shell
docker: Error response from daemon: OCI runtime create failed: container_linux.go: 345: starting container process caused "exec: \" ./ entrypoint.sh \ ": stat ./entrypoint.sh: no such file or directory": unknown .
ERRO [0001] error waiting for container: context canceled

and the Dockerfile is like that

FROM rasa / rasa-sdk: latest

# Add a custom system library (e.g. git)
RUN apt-get update && \
     apt-get install -y git

# Add a custom python library (e.g. jupyter)
RUN pip install --no-cache-dir pymssql

As shown in the Rasa with Docker Documentation:

I hope you can help me.

A pleasure and thanks!

Hello @SpyrosCapetanopulos,

Just for clarification are you updating the existing SDK dockerfile with this or are you making a new one? That error appears to be complaining about the entrypoint.sh file missing and the syntax of that FROM statement doesn’t look right.

Hello @btotharye,

The syntax is correct, here in the forum I include the spaces but it looks like this:

  • FROM rasa / rasa-sdk: latest

With respect to the rest, a new Dockerfile is being created, but I have the doubt with the file that mentions me “entrypoint.sh”, where can I find it or what it should contain ?, in the Rasa documentation it does not explain about that file.

Regards!

@SpyrosCapetanopulos if you look at the source code for the sdk, GitHub - RasaHQ/rasa-sdk: SDK for the development of custom actions for Rasa you will see there is a entrypoint.sh file and that is referenced in the original Dockerfile we have, why not just fork this repo and update it that way so you can always pull down changes from the source?

rasa-sdk/Dockerfile at master · RasaHQ/rasa-sdk · GitHub is the line in the original dockerfile where this entrypoint.sh file is referenced.

1 Like

Did you solve that issue? can you share?

After the rasa-sdk version 1.8.0 docker image uses UID 1001 instead of root. To install anything you can switch to root user and switch back at the end of the your dockerfile.

add USER root in your Dockerfile

Look at my comment here