apisix-java-plugin-runner icon indicating copy to clipboard operation
apisix-java-plugin-runner copied to clipboard

request help: Socket-related errors occur if you build with Custom Plugin as a docker image and run Gateway in a K8s environment

Open kworkbee opened this issue 4 months ago • 1 comments

Issue description

The custom plug-in implementation is integrated with APISIX images to operate Gateway in a production environment.

FROM ${APISIX_IMAGE}

USER root

WORKDIR /app

COPY ./apisix-runner-bin/apisix-java-plugin-runner.jar /app/apisix-external-plugin.jar

RUN apt-get update && \
    apt-get install -y --no-install-recommends openjdk-11-jdk && \
    rm -rf /var/lib/apt/lists/*

RUN chown -R apisix:apisix /app

USER apisix

I am using the image built by configuring Dockerfile as above. If an API request to use the plug-in occurs as shown in the log below, an error that there is no socket file occurs.

2025/07/29 17:25:08 [error] 50#50: *45468 [lua] init.lua:889: phase_func(): failed to connect to the unix socket unix:/app/conf/apisix-1.sock: no such file or directory, client: X.X.X.X, server: _, request: "GET /api/v1/something HTTP/1.1", host: "api.corp.com"

Previously, Plugin Runner Version is 0.4.0, and Base Image is 3.9.1-debian, which was not much of an issue at this time. The error continues to occur after upgrading to Plugin Runner version 0.6.0. It is operating in a Kubernetes environment, and even if you change the securityContext setting, the error continues to occur without much change.

Environment

  • apisix-java-plugin-runner version 0.6.0

kworkbee avatar Jul 29 '25 10:07 kworkbee