我正在docker容器中安装java应用程序。它运行正常,但我在日志中不断发现这个错误:
信息1---[ost-startStop-1]o.a.catalina。果心AprLifecycleListener:java上没有基于APR的Apache Tomcat本机库,该库允许在生产环境中实现最佳性能。图书馆路径:[/usr/java/packages/lib/amd64:/usr/lib/x86\u 64-linux-gnu/jni:/lib/x86\u 64-linux-gnu:/usr/lib/x86\u 64-linux-gnu:/usr/lib/jni:/lib:/usr/lib]
所以,我试图通过遵循this和this来安装这个APR包,并通过在我的dockerfile中添加这一行来安装tomcat本机:
运行apt get install-y libtcnative-1
但是,当添加此行时,我在日志中收到以下消息:
错误1---[ost-start Stop-1]o.a.catalina.core.AprLifeycleListener:安装了基于APR的Apache Tomcat Native库的不兼容版本[1.1.33],而Tomcat需要版本[1.2.14]
我尝试安装:
apt-get install-y openjdk-8-jdk libapr1-dev
和
apt get安装-y openjdk-8-jdk libtcnative-1 libapr1 dev
但是这些都不起作用...我一直收到同样的消息。
我还尝试按照这里的第一个答案从源代码安装,但这也不起作用。
以下是我的dockerfile文件的其余部分:
FROM ubuntu:16.04
RUN apt-get update \
&& apt-get install -y software-properties-common python-software-properties \
&& add-apt-repository ppa:mozillateam/ppa \
&& apt-get update \
&& apt-get install -y firefox firefox-esr
RUN apt-get install -y libtcnative-1 openjdk-8-jdk
任何帮助是感激。谢谢!
如果有人仍然感兴趣,以下是我所做的:
FROM adoptopenjdk/openjdk11:jdk-11.0.1.13 AS build
ADD apr-1.7.0 $HOME/apr-1.7.0
ADD tcnative $HOME/tcnative
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update -y && \
apt-get -y upgrade && \
apt-get install -y build-essential libssl-dev
WORKDIR $HOME/apr-1.7.0
RUN ./configure && make && make install
WORKDIR $HOME/tcnative
RUN ./configure --with-apr=/usr/local/apr/bin/apr-1-config --with-java-home=$JAVA_HOME --with-ssl=$HOME/OPENSSL --prefix=/usr/local/apr
RUN make && make install
FROM adoptopenjdk/openjdk11:jre-11.0.10_9
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update -y && \
apt-get -y upgrade && \
apt-get install -y --no-install-recommends libssl-dev x11-apps && \
apt-get clean && \
apt-get autoremove -y --purge && \
rm -rf /var/lib/apt/lists/*
COPY --from=build /usr/local/apr /usr/local/apr
当您调用java来运行jar时,请设置库路径:
入口点[“java”,“-Djava.library.path=/usr/local/apr/lib”,“-jar”,“app.jar”]
应用程序现在启动并报告正确的库:
org.apache.catalina.core.AprLifecycleListener - Loaded Apache Tomcat Native library [1.2.31] using APR version [1.7.0].
HTTP状态404-/ 类型状态报告 消息/ Apache Tomcat/7.0.75 Tomcat Catalina日志和服务器日志都有以下错误: 在java.library.path:/users/luowensheng/library/java/extensions:/library/java/extensions:/network/library/java/extensions:/syst
“在LocalHost上启动Tomcat V7.0服务器”遇到问题。 提前道谢。
生产中的EAP EAP在默认的FreeRADIUS安装中开箱即用。但是,也有一些要点需要注意或更改以适应您的环境。在本节中,我们将介绍以下几点: 适当的公钥基础设施(PKI)的重要性 配置内部隧道虚拟服务器 内部和外部隧道识别的问题 禁用未使用的EAP方法 公共密钥基础设施简介公钥基础结构主要用于两件事: 验证某人的身份 通过不安全的连接交换安全数据 为了确保某人是他们声称的人,我们使用证书颁发机
更新时间:2019-08-31 11:22:33 服务分为生产环境与开发环境,未发布的服务认为是在开发环境,发布后的服务为生产环境的服务。生产环境的服务才可以在web工作台,或代码工程内调用。生产环境的服务不可再进行修改,需要在开发环境中修改部署发布服务后,才可生效。 服务运维监控功能是为生产环境的服务提供的,您可以在此查看生产环境服务的调用量及运行日志。
本文向大家介绍详解Django+Uwsgi+Nginx 实现生产环境部署,包括了详解Django+Uwsgi+Nginx 实现生产环境部署的使用技巧和注意事项,需要的朋友参考一下 uwsgi介绍 uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换。 要注意 WSGI / uwsgi / uWS
生产环境打包要做两件事: 压缩应用代码; 使用 Vue.js 指南中描述的部署方式去除 Vue.js 中的警告。 下面是配置示例: // webpack.config.js module.exports = { // ... other options plugins: [ // short-circuits all Vue.js warning code new webp