apache / apisix-dashboard

Dashboard for Apache APISIX
https://apisix.apache.org/
Apache License 2.0
1.01k stars 529 forks source link

apisix-dashboard v3.0.1 send put delete request can not success #2896

Open danielmlc opened 11 months ago

danielmlc commented 11 months ago

Issue description

In the apisix-dashboard, all page data queries are successful, but all write operations time out. The deployment is done using Docker. The apisix version is 3.7, and the dashboard version is 3.0.1 微信截图_20231201191043

Expected behavior

In the apisix-dashboard, all page data queries are successful, but all write operations time out. The deployment is done using Docker. The apisix version is 3.7, and the dashboard version is 3.0.1

How to Reproduce

this is yaml config:

apisix


apisix:
  node_listen: 9080              # APISIX listening port
  enable_ipv6: false

  enable_control: true
  control:
    ip: "0.0.0.0"
    port: 9092

deployment:
  admin:
    allow_admin:               # https://nginx.org/en/docs/http/ngx_http_access_module.html#allow
      - 0.0.0.0/0              # We need to restrict ip access rules for security. 0.0.0.0/0 is for test.

    admin_key:
      - name: "admin"
        key: edd1c9f034335f136f87ad84b625c8f1
        role: admin                 # admin: manage all configuration data

      - name: "viewer"
        key: 4054f7cf07e344346cd3f287985e76a2
        role: viewer

  etcd:
    host:                           # it's possible to define multiple etcd hosts addresses of the same etcd cluster.
      - "http://etcd:2379"          # multiple etcd address
    prefix: "/apisix"               # apisix configurations prefix
    timeout: 30                     # 30 seconds

plugin_attr:
  prometheus:
    export_addr:
      ip: "0.0.0.0"
      port: 9091

dashboard


apisix:
  node_listen: 9080              # APISIX listening port
  enable_ipv6: false

  enable_control: true
  control:
    ip: "0.0.0.0"
    port: 9092

deployment:
  admin:
    allow_admin:               # https://nginx.org/en/docs/http/ngx_http_access_module.html#allow
      - 0.0.0.0/0              # We need to restrict ip access rules for security. 0.0.0.0/0 is for test.

    admin_key:
      - name: "admin"
        key: edd1c9f034335f136f87ad84b625c8f1
        role: admin                 # admin: manage all configuration data

      - name: "viewer"
        key: 4054f7cf07e344346cd3f287985e76a2
        role: viewer

  etcd:
    host:                           # it's possible to define multiple etcd hosts addresses of the same etcd cluster.
      - "http://etcd:2379"          # multiple etcd address
    prefix: "/apisix"               # apisix configurations prefix
    timeout: 30                     # 30 seconds

plugin_attr:
  prometheus:
    export_addr:
      ip: "0.0.0.0"
      port: 9091

Screenshots

No response

Environment

Additional context

No response

danielmlc commented 11 months ago

image Regardless of the method, all write requests are timing out.

koiho commented 11 months ago

I'm experiencing your problem too, and checking the logs revealed that etcd is not connecting: connection error: desc = \"transport: Error while dialing dial tcp 0.0.0.0:2379: connect: connection refused\". So please check that your etcd service is connected. i am using docker deployment, apisix version is: apache/apisix:3.7.0-debian; dashboard version is: apache/apisix-dashboard:3.0.1-alpine.

huzhangzheng commented 3 months ago

i find the same error,i do sth,then solve the problem

step one, run the container with --network docker run -d --name dashboard --network docker-apisix_apisix -p 9000:9000 -v /Users/husan/apisix/example/apisix_databoard_conf/conf.yaml:/usr/local/apisix-dashboard/conf/conf.yaml apache/apisix-dashboard

step two, edit apisix_databoard_conf/conf.yaml. about "etcd endpoints" ` etcd: endpoints:

setp three, edit apisix_databoard_conf/conf.yaml again. about 'allow_list', annotate it or allow you host ip

finally, you input http://127.0.0.1/9000 in your chrome, admin:admin is the default password, enjoy it