aboutsummaryrefslogtreecommitdiffstats
path: root/bin/abrmdcontainer/dockerfile
blob: fc788b5ff88d45d04fc58053aac8d36703baf27d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
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