1
|
yum install docker |
1 2 3 |
git clone https://gitee.com/openeuler/itrustee_sdk.git git clone https://gitee.com/openeuler/libboundscheck.git mv libboundscheck itrustee_sdk/thirdparty/open_source/ |
1 2 3 4 5 |
cd itrutee_sdk/build/signtools/ mkdir signed_config mkdir TA_cert cp /path/to/config ./signed_config/ cp /path/to/private_key.pem ./TA_cert/ |
1 2 |
cd ../../test/CA/helloworld/ vim ca_demo.c |
1
|
make |
1 2 |
cd ../../TA/helloworld/ vim manifest.txt |
1
|
make |
1 2 |
wget https://mirrors.huaweicloud.com/openeuler/openEuler-22.03-LTS-SP1/docker_img/aarch64/openEuler-docker.aarch64.tar.xz docker load -i openEuler-docker.aarch64.tar.xz |
1 2 3 4 5 6 7 |
mkdir build && cd build cp ../itrustee_sdk/test/CA/helloworld/demo_hello ./ cp ../itrustee_sdk/test/TA/helloworld/*.sec ./ cp /usr/lib64/libboundscheck.so ./ cp /usr/lib64/libteec.so ./ cp /usr/bin/tlogcat ./ cp /usr/bin/agentd ./ |
镜像构建目录下的文件如下。
1
|
ldd agentd
|
openEuler基础镜像已经包含除libboundscheck.so和libteec.so外的so库,因此只拷贝了这两个so库到镜像中,其他操作系统镜像根据实际情况拷贝缺失的库。
1
|
vim Dockerfile
|
1 2 3 4 5 6 7 8 9 10 11 12 |
FROM openeuler-22.03-lts-sp1 RUN mkdir -p /vendor/bin && mkdir -p /data COPY *.so /usr/lib64/ COPY tlogcat agentd /usr/bin/ COPY *.sec /data/ COPY demo_hello /vendor/bin/ RUN chmod +x /vendor/bin/demo_hello CMD /usr/bin/agentd & /vendor/bin/demo_hello |
1
|
docker build -t demo_hello . |
1 2 |
docker run -it --mount type=bind,source=/var/itrustee/teecd,target=/var/itrustee/teecd,readonly --device /dev/teelog:/dev/teelog:wr --device /dev/tc_ns_cvm:/dev/tc_ns_cvm:wr -d demo_hello docker logs -f <container_id> |