FaaSioFlexService opened a new issue, #3116:
URL: https://github.com/apache/apisix-dashboard/issues/3116

   ### Issue description
   
   docker logs apisix-dashboard 
   panic: runtime error: invalid memory address or nil pointer dereference
   [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xca1ef3]
   
   goroutine 1 [running]:
   
github.com/apisix/manager-api/internal/core/storage.InitETCDClient(0xc0002a6640?)
           /usr/local/apisix-dashboard/api/internal/core/storage/etcd.go:59 
+0x53
   
github.com/apisix/manager-api/internal/core/server.(*server).setupStore(0x60?)
           /usr/local/apisix-dashboard/api/internal/core/server/store.go:27 
+0x25
   
github.com/apisix/manager-api/internal/core/server.(*server).init(0xc000052801?)
           /usr/local/apisix-dashboard/api/internal/core/server/server.go:89 
+0x52
   
github.com/apisix/manager-api/internal/core/server.(*server).Start(0xc00013ddb8,
 0xc00009a1e0)
           /usr/local/apisix-dashboard/api/internal/core/server/server.go:49 
+0x27
   github.com/apisix/manager-api/cmd.manageAPI()
           /usr/local/apisix-dashboard/api/cmd/root.go:71 +0x91
   github.com/apisix/manager-api/cmd.glob..func1(0x17b3960?, {0xf8045b?, 0x2?, 
0x2?})
           /usr/local/apisix-dashboard/api/cmd/root.go:40 +0x17
   github.com/spf13/cobra.(*Command).execute(0x17b3960, {0xc00010c190, 0x2, 
0x2})
           /go/pkg/mod/github.com/spf13/cobra@v1.6.1/command.go:916 +0x862
   github.com/spf13/cobra.(*Command).ExecuteC(0x17b3960)
           /go/pkg/mod/github.com/spf13/cobra@v1.6.1/command.go:1044 +0x3bd
   github.com/spf13/cobra.(*Command).Execute(...)
           /go/pkg/mod/github.com/spf13/cobra@v1.6.1/command.go:968
   github.com/apisix/manager-api/cmd.Execute()
           /usr/local/apisix-dashboard/api/cmd/root.go:55 +0x25
   main.main()
           /usr/local/apisix-dashboard/api/main.go:24 +0x17
   
   
   El fichero de configuración es:
   ```
   conf:
     listen:
       host: 0.0.0.0
       port: 9000
   
   apisix:
     # URL de la API Admin de APISIX (así el dashboard sabe dónde apuntar)
     base_url: "http://apisix:9180/apisix/admin";
     # Opcional: si usas puertos adicionales de APISIX
     # node_listen: [9080, 9070]
   
   etcd:
     endpoints:
       - "http://etcd:2379";
   
   authentication:
     secret: "edd1c9f0985e76a2"
     expire_time: 3600
     users:
       - username: admin
         password: admin_password
   
   log:
     level: warn
     filepath: logs/dashboard.log
     error_log:
         level: warn       # supports levels, lower to higher: debug, info, 
warn, error, panic, fatal
         file_path:
           logs/error.log  # supports relative path, absolute path, standard 
output
                           # such as: logs/error.log, /tmp/logs/error.log, 
/dev/stdout, /dev/stderr
   
   plugin_attr:
     prometheus:
       export_addr:
         ip: "0.0.0.0"
         port: 9091
   ```
   Dockerfile:
   
   ```
   FROM alpine:3.20
   
   RUN apk update && apk add --no-cache ca-certificates
   
   # Copiar binario desde imagen oficial
   COPY --from=apache/apisix-dashboard:latest 
/usr/local/apisix-dashboard/manager-api /usr/local/bin/manager-api
   
   # Crear estructura de directorios requerida
   RUN mkdir -p /usr/local/pisix-dashboard && chmod -R 777 
/usr/local/pisix-dashboard
   RUN mkdir -p /usr/local/apisix-dashboard/conf
   RUN mkdir -p /logs && chmod -R 777 /logs
   # Copiar certificados y configuraciones
   COPY ./conf/certs/rootCA.pem /usr/local/share/ca-certificates/rootCA.crt
   RUN update-ca-certificates
   
   # Copiar archivos de configuración a la ruta ESPERADA por el binario
    
   
   COPY ./conf/dashboard.yaml /usr/local/apisix-dashboard/conf/conf.yaml
   COPY ./conf/schema.json /usr/local/apisix-dashboard/conf/schema.json
   COPY ./conf/schema.json ./conf/schema.json
   COPY ./conf/customize_schema.json 
/usr/local/apisix-dashboard/conf/customize_schema.json
   COPY ./conf/customize_schema.json ./conf/customize_schema.json
   
   EXPOSE 9000
   
   # Ejecutar con ruta de configuración absoluta
   CMD ["manager-api", "-c", "/usr/local/apisix-dashboard/conf/conf.yaml"]
   ```
   
   ### Expected behavior
   
   Qeue el contenedor apisix-dashboard funcione
   
   ### How to Reproduce
   
   Simplemente con el Dokerfile y el fichero d e configuración dados. Se 
ejecuta y crea el contnedor generando ese error.
   
   ### Screenshots
   
   _No response_
   
   ### Environment
   
   - apisix version (cmd: `apisix version`):
   - OS (cmd: `uname -a`):
   - OpenResty / Nginx version (cmd: `nginx -V` or `openresty -V`):
   - etcd version, if have (cmd: run `etcd --version`):
   - apisix-dashboard version, if have:
   - Browser version, if have:
   
   
   ### Additional context
   
   _No response_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@apisix.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to