Rasa Actions Server Docker Issue


I have followed the Rasa Action Server tutorial from this link:

it run perfectly, the custom actions can return text (the chuck norris’s joke)

Then i did replicate these to my own work and the “action_server” docker container keep exited (code 1)

I am using rasa and rasa-sdk version 2.8.1, tried 2.8.12-full but still failed.

Do i have to provide the “Dockerfile” file like in this tutorial?

Thanks for the help

Can you share your Docker commands and command that causes error code?

@ronniegoei make sure you have mention action image name in the below code.

mention image name what ever you had mention in the image.

  url: 'http://action_server:5055/webhook'

OR please share the docker file with us.

Thanks for the responses

@nik202 I have mentioned it on endpoint.yml

action_endpoint: url: “http://action-server:5055/webhook

actions.py (3.0 KB) Uploading: init.py… actions.cpython-38.pyc (2.8 KB) init.cpython-38.pyc|attachment (123 Bytes) nlu.yml (1.7 KB) rules.yml (534 Bytes) stories.yml (744 Bytes) config.yml (1.8 KB) credentials.yml (938 Bytes) Dockerfile (186 Bytes) domain.yml (3.1 KB) endpoints.yml (1.4 KB)

Are RASA implement case sensitive text?

Thank you very much

@InnoOmnia three steps that i have done:

  1. docker network create action-connect
  2. docker run -d -v C:\Users\USER\rasa-env\Docker\actions:/app/actions --net action-connect --name action-server rasa/rasa-sdk:2.8.1
  3. docker run -it -v C:\Users\USER\rasa-env\Docker:/app -p 5005:5005 --net action-connect rasa/rasa:2.8.1 shell

Thank you :grinning:

ok, here is my steps, some differences although.

This is same

docker network create action-link

This is same, except version

docker run -d -v $(pwd)/actions:/app/actions --net action-link --name action-server-prod rasa/rasa-sdk:2.2.0

Same, but I use the name and set the user ID, also I have --rm but that makes no difference and lastly I have --debug, again, not affecting here

docker run --name=pilleri --user 1003 -it --rm -v $(pwd):/app -p 5013:5005 --net action-link rasa/rasa:2.2.0-full shell --debug

But did you make first action server container? Here is my Dockerfile

#Extend the official Rasa SDK image
FROM rasa/rasa-sdk:2.2.0
#COPY * /app/

# Use subdirectory as working directory

# Copy any additional custom requirements, if necessary (uncomment next line)

# Change back to root user to install dependencies
USER root

# Install extra requirements for actions code, if necessary (uncomment next line)

# Copy actions folder to working directory
COPY ./actions /app/actions

# Install extra requirements for actions code, if necessary (uncomment next line)
RUN python -m pip install --upgrade pip
RUN pip install --no-cache-dir typing_extensions

# By best practices, don't run the code with root user
USER 1003

and then command

docker build . -t rasa-sdk:2.2.0

I have followed your steps including the dockerfile and it still showing “exited(1)” on docker hub

I do write “action_serverr” on purpose to distinguish this from other, are RASA implement case-sensitive input? (i have tried with “action_server” as well but still no luck)

Edited: I have tried to use 2.2.0 rasa-sdk version but still showing exited(1) Mind to share your endpoints.yml on action_endpoint section?


sure, here it is, same

  url: http://action-server-prod:5055/webhook

What you are talking about Docker hub and error there? What is your environment? I’m running mine in Ubuntu 18_04 cloudserver.

If i am not misunderstanding your question, the answer is i am using this in virtual environment on my local computer, windows 10.

UPDATE: I found the answer, in actions.py i wrote “from matplotlib import animation” which i dont know why i put this (pardon me i just do copy-paste thing and try it one step at a time :joy:)

after i command this line, the action server can run smooth and response correctly

Thank you

1 Like