Custom Actions from MySql-db not working DOCKER

Hi guys,

I was using the following tutorial to deploy my application on Google Cloud Services:

YouTube

The chatbot greets the user just fine but when it tries to trigger an action it fails. I can properly find the error but I think it mentions “cannot find registered action”. However, my chatbot working just fine on Rasa X and my mobile app.

I have three folders in my root folder:

  1. actions
  2. backend
  3. frontend

and three files:

  1. docker-compose.yml
  2. nginx.conf
  3. Readme

I am attaching my files down below. ATM I am trying to run my chatbot using docker on my localhost. I use the following command to run this:

sudo docker-compose up --build

The terminal doesn’t show any error though. Your help would be appreciated!

docker-compose.yml

version: ‘3’

services:

nginx:

  container_name: "nginx"

  image: nginx

  volumes:

    - ./nginx.conf:/etc/nginx/nginx.conf

  ports:

    - 80:80

  depends_on: 

    - rasa

    - action_server

    - chatbot_ui

rasa:

  container_name: "rasa_server"

  build: 

    context: backend

  ports: 

    - "5005:5005"

action_server:

  container_name: "action_server"

  build: 

    context: actions

  volumes:

    - ./actions:/app/actions

  ports:

    - "5055:5055"  

chatbot_ui:

  container_name: "chatbot_ui"

  build: 

    context: frontend

  ports: 

    - "3000:3000"

nginx.conf

events { }

http{

server {

listen 80;

root /app;

location / {

resolver 127.0.0.11 valid=30s;

set $chatbot_ui chatbot_ui;

proxy_http_version          1.1;

proxy_cache_bypass          $http_upgrade;

proxy_set_header            Upgrade $http_upgrade;

proxy_set_header            Connection "Upgrade";

proxy_pass http://$chatbot_ui:3000;

proxy_read_timeout 300;

}

location ~ ^/rasa(/?)(.*) {

resolver 127.0.0.11 valid=30s;

set $rasa_server rasa;

proxy_http_version          1.1;

proxy_cache_bypass          $http_upgrade;

proxy_set_header            Upgrade $http_upgrade;

proxy_set_header            Connection "Upgrade";

proxy_pass http://$rasa_server:5005/$2;

proxy_read_timeout 300;

}

}

}

action_endpoint:

url: "http://localhost:5055/webhook"

and I’ve tried this as well:

url: “http://action_server:5055/webhook”

Hey @zaidalvi,

It would be very helpful if you would attach your logs. Additionally, please make sure that your action is added to the backend/domain.yml file.

for example

actions:
  - action_hello_world

hello,

if your are running rasa on gcp using docker, then use

url : “http://action_server:5055/webhook”

in your endpoint.yml file. because “action_server” is the name of your action docker container

and the image you have attached, address bar shows ‘localhost’, are you running it locally

if you are are still having issues kindly share your logs

and in your docker-compose.yml file, no MySql container is there, without defining it you can not use it