Statische Kompilierung – So stellen Sie Nginx stapelweise bereit
大家讲道理
大家讲道理 2017-05-16 17:20:56
0
2
509

Es gibt eine Reihe von Maschinen, die dasselbe Nginx bereitstellen müssen. Ich möchte die Dateien direkt nach dem Kompilieren kopieren, aber nach dem Kopieren wird angezeigt, dass eine bestimmte abhängige Bibliothek nicht gefunden werden kann.
Gibt es eine Möglichkeit, es einmal zu kompilieren und auf jedem Computer laufen zu lassen?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

Antworte allen(2)
習慣沉默

可以用ldd和lsof找出二进制文件nginx依赖的共享库,然后复制到nginx里的一个目录(比如/png/pack/libs),然后用patchelf修改二进制文件nginx的rpath和interpreter:

patchelf --set-rpath /png/pack/libs --force-rpath /png/nginx/1.8/sbin/nginx
patchelf --set-interpreter /png/pack/libs/ld-linux-x86-64.so.2 /png/nginx/1.8/sbin/nginx

然后打包目录/png,部署到各个服务器即可.具体参考我如何编译打包的适用于64位Linux发行版的PHP7.

淡淡烟草味

docker

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage