首頁  >  問答  >  主體

靜態編譯 - 如何批次部署nginx

有一批機器需要部署同樣的nginx,我想一次編譯後直接拷貝文件,但是拷貝之後提示某個依賴函式庫找不到。
有什麼辦法可以一次編譯放到每台機器都能運作?

大家讲道理大家讲道理2713 天前476

全部回覆(2)我來回復

  • 習慣沉默

    習慣沉默2017-05-16 17:22:56

    可以用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.

    回覆
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-16 17:22:56

    碼頭工人

    回覆
    0
  • 取消回覆