أستخدم عامل ميناء لنشر تطبيق ويب جافا في القط. لأغراض الاختبار ، أريد فرض تاريخ النظام على قيمة محددة.

باستخدام Docker ، لا يمكن تغيير تاريخ الحاوية دون التأثير على تاريخ المضيف. لذلك أود استخدام Faketime . تسمح هذه الأداة بمعالجة تاريخ النظام لأمر معين. على سبيل المثال :

$ date
Web Jul 1 09:57:51 UTC 2015
$ faketime "2008-12-24" date
Web Dec 24 00:00:00 UTC 2008

Howewer عندما أستخدمه في بدء تشغيل القط ، تلقيت خطأ sem_open:

$ faketime "2008-12-24" /bin/bash -c "/opt/tomcat/bin/catalina.sh start"
[...]
Tomcat started.

$ tail -f /opt/tomcat/logs/catalina.out
sem_open: No such file or directory

أي فكرة لحل هذه المشكلة؟

answer

لست متأكدًا مما إذا كنت قد قمت بحل هذه المشكلة بالفعل ، فأنا أنفذ $ faketime "2016-11-02" / bin / bash -c "/opt/tomcat/bin/startup.sh start"

ثم سيصنع تاريخ وقت تشغيل القط ، أتمنى أن يكون هذا مفيدًا.