| FROM ubuntu:xenial |
| |
| RUN apt-get -y update && \ |
| apt-get -y install \ |
| autoconf \ |
| autoconf-archive \ |
| libglib2.0-dev \ |
| libdbus-1-dev \ |
| automake \ |
| libtool \ |
| autotools-dev \ |
| libcppunit-dev \ |
| p11-kit \ |
| libcurl4-gnutls-dev \ |
| libcmocka0 \ |
| libcmocka-dev \ |
| build-essential \ |
| git \ |
| pkg-config \ |
| gcc \ |
| g++ \ |
| m4 \ |
| wget \ |
| liburiparser-dev \ |
| libssl-dev \ |
| pandoc |
| |
| RUN apt-get -y install libgcrypt20-dev |
| |
| RUN git clone https://github.com/tpm2-software/tpm2-tss.git |
| RUN git clone https://github.com/tpm2-software/tpm2-abrmd.git |
| RUN git clone https://github.com/tpm2-software/tpm2-tools.git |
| |
| # Directory for the scripts |
| RUN mkdir -p /abrmd/bin |
| |
| RUN cd tpm2-tss && \ |
| git checkout 1.2.0 && \ |
| ./bootstrap && \ |
| ./configure && \ |
| make && \ |
| make install |
| |
| RUN cd tpm2-abrmd && \ |
| git checkout 1.1.1 && \ |
| useradd --system --user-group tss && \ |
| ./bootstrap && \ |
| ./configure --with-dbuspolicydir=/etc/dbus-1/system.d \ |
| --with-udevrulesdir=/etc/udev/rules.d/ \ |
| --with-systemdsystemunitdir=/lib/systemd/system && \ |
| make && \ |
| make install |
| |
| RUN cd tpm2-tools && \ |
| git checkout 2.1.0 && \ |
| ./bootstrap && \ |
| ./configure --with-tcti-tabrmd=yes && \ |
| make && \ |
| make install |
| |
| RUN echo "/usr/local/lib" > /etc/ld.so.conf.d/tpm2.conf && \ |
| ldconfig |
| |
| RUN rm -rf tpm2-tss |
| RUN rm -rf tpm2-abrmd |
| RUN rm -rf tpm2-tools |
| |
| COPY ./initialize_tpm.sh /abrmd/bin/ |
| COPY ./run_abrmd.sh /abrmd/bin/ |
| COPY ./init.sh /abrmd/bin/ |
| |
| RUN chmod -R +x /abrmd/bin |