0

基本上,我将拥有一大堆将安装 ossec 代理的 ubuntu 容器,这些容器将与主服务器通信。我想自动化安装,因此使用dockerfile 中的 docker RUN变量我编写了一个脚本,该脚本下载 ossec tar 文件,将其解压缩,cds 进入目录并运行安装脚本,同时将参数传递给安装阶段的每个问题:

Dockerfile:

From ubuntu

RUN apt-get update && apt-get install -y \
    build-essential \
    libmysqlclient-dev \
    postgresql-common \
    wget \
    tar \

RUN wget -U ossec https://bintray.com/artifact/download/ossec/ossec-hids/ossec-hids-2.8.3.tar.gz
RUN tar -xvf ossec-hids-2.8.3.gz && \
    rm -f ossec-hids-2.8.3.tar.gz && \
    cd ossec-hids-2.8.3 && \
    echo "en agent \n 192.168.1.50 y y y" | ./install.sh

当它在脚本中回显参数时, install.sh 脚本将无限循环第二个问题。注意我已经尝试了 printf、expect script、yes 命令并尝试了容器内的脚本。所有的结果都是一样的。

4

0 回答 0