我正在使用入口点启动我的应用程序,现在我在入口点中使用了一个变量,并在运行时在kubernetes pod env变量中传递了这个变量,这是我的docker文件:
FROM openjdk:8-jre-alpine
MAINTAINER jiangxiaoqiang (jiangtingqiang@gmail.com)
ENV LANG=en_US.UTF-8 \
LC_ALL=en_US.UTF-8 \
TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
&& echo $TZ > /etc/timezone \
&& apk add --no-cache curl jq procps
ADD soa-service/build/libs/soa-service-1.0.0-SNAPSHOT.jar /root/soa-service-1.0.0-SNAPSHOT.jar
ADD script/start-docker.sh /root/start-docker.sh
EXPOSE 11005
ENTRYPOINT exec java -Dfile.encoding=UTF-8 -Xmx256M -Xms128M \
-Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=5007 \
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/dump \
-javaagent:/opt/skywalking/agent/skywalking-agent.jar=agent.service_name=soa-service \
-Dskywalking.agent.service_name=soa-service \
-Dskywalking.collector.backend_service=$SKYWALKING_ADDR \
-jar /root/soa-service-1.0.0-SNAPSHOT.jar在yaml中传递kubernetes env变量,如下所示:
"env": [
{
"name": "SKYWALKING_ADDR",
"value": "10.106.251.29:11800"
}]现在的问题是,我不确定这种配置是否能正常工作。我希望看到变量被传递给入口点,我应该这样做才能看到successfully.what的启动命令吗?
发布于 2020-06-14 14:12:55
使用以下命令查找pod名称
kubectl get pods
登录运行中的pod,执行bash:
kubectl exec -it yourpodname bash
使用-aux执行ps命令,以查看有关运行进程和筛选java的更多详细信息
ps -aux | grep java
输出示例:
cnb 1 0.1 8.4 456540 171884 ? Ssl Jun13 3:28 java -cp /workspace -XX:ReservedCodeCacheSize=40M -XX:MaxMetaspaceSize=60M -Xlog:gc -Xms36m -Xmx40m -Xss256k -XX:MaxRAM=150M -Djava.security.properties=/layers/paketo-buildpacks_bellsoft-liberica/java-security-properties/java-security.properties -agentpath:/layers/paketo-buildpacks_bellsoft-liberica/jvmkill/jvmkill-1.16.0-RELEASE.so=printHeapHistogram=1 -XX:ActiveProcessorCount=2 -XX:MaxDirectMemorySize=10M org.springframework.boot.loader.JarLauncher
https://stackoverflow.com/questions/62368850
复制相似问题