Ответы пользователя по тегу Docker
  • Как запустить filebeat внутри Docker контейнера?

    @gubber Автор вопроса
    В итоге, пришлось делать обходным путём:
    создать start.sh

    #!/bin/bash

    OUTPUT_LOGFILES=""

    service filebeat start

    OUTPUT_LOGFILES+="/var/log/filebeat/filebeat "

    cd /usr/local/tomcat/

    bin/catalina.sh start

    OUTPUT_LOGFILES+="/usr/local/tomcat/logs/catalina*.log"

    touch $OUTPUT_LOGFILES
    tail -f $OUTPUT_LOGFILES &
    wait


    И конечный Dockerfile выглядит следующим образом

    FROM tomcat:8.5
    RUN curl -L -O https://artifacts.elastic.co/downloads/beats/fileb...
    RUN dpkg -i filebeat-5.2.2-amd64.deb
    COPY filebeat.yml /etc/filebeat
    COPY ./start.sh /
    RUN chmod +x /start.sh

    COPY db-creator.jar /opt/db-creator/
    COPY ./docker-entrypoint.sh /
    RUN chmod +x /docker-entrypoint.sh
    ENTRYPOINT ["/docker-entrypoint.sh"]

    RUN rm -Rf /usr/local/tomcat/webapps/ROOT/*
    COPY server.xml /usr/local/tomcat/conf
    RUN mkdir /usr/local/tomcat/webapps-my
    COPY my.war /usr/local/tomcat/webapps-my/ROOT.war

    CMD ["/start.sh"]


    С ним лишь одна проблема - не захватывает логи томката. Но это потому что не умею "готовить кошек".
    Ответ написан
    Комментировать