【发布时间】:2019-08-01 20:51:38
【问题描述】:
我正在使用以下 Dockerfile 使用 Python 3.7.4 和 Syslog-ng 创建映像:
FROM python:3.7.4
RUN apt-get update -qq && apt-get install -y \
wget \
gnupg2
RUN wget -qO - https://download.opensuse.org/repositories/home:/laszlo_budai:/syslog-ng/Debian_9.0/Release.key | apt-key add -
RUN echo 'deb http://download.opensuse.org/repositories/home:/laszlo_budai:/syslog-ng/Debian_9.0 ./' | tee --append /etc/apt/sources.list.d/syslog-ng-obs.list
RUN apt-get update -qq && apt-get install -y \
syslog-ng
COPY ./out.log /out.log
COPY ./syslog-ng.conf /etc/syslog-ng/syslog-ng.conf
RUN find /usr/lib/ -name 'libjvm.so*' | xargs dirname | tee --append /etc/ld.so.conf.d/openjdk-libjvm.conf
RUN ldconfig
EXPOSE 514/udp
EXPOSE 601/tcp
EXPOSE 6514/tcp
ENTRYPOINT ["/usr/sbin/syslog-ng", "-F"]
但是,我想在我的 syslog-ng.conf 中使用 Python 3.7.4,而 syslog-ng 正在使用 Python 2.7。
如何更改为 Python 3?
编辑:MrAnno 的解决方案
用python3编译配置:
RUN cd /syslog && \
./configure --with-python=3 --enable-ssl --enable-systemd --enable-debug && \
make && make install
RUN ldconfig
【问题讨论】:
标签: python python-3.x docker syslog-ng