ʻO ka waihona rpm maʻalahi me ka hoʻohana ʻana iā Inotify a me webdav
Ma kēia pou, e nānā mākou i kahi waihona rpm artifact me ka hoʻohana ʻana i kahi palapala inotify + createrepo maʻalahi. Hoʻouka ʻia nā mea kiʻi ma o webdav me ka hoʻohana ʻana i ka apache httpd. No ke aha e kākau ʻia ai ʻo Apache httpd i ka hopena o ka pou.
No laila, pono e hoʻokō ka hopena i nā koi aʻe no ka hoʻonohonoho ʻana i ka mālama RPM wale nō:
Hoʻolaha
Loaʻa ka pūʻolo i loko o ka waihona i kekahi mau kekona ma hope o ka hoʻouka ʻana i ka waihona artifact.
Nā mea hana i loko SonaType Nexus mālama ʻia i loko o ka blob. I ka hopena o ka pau ʻana o ka mana, ʻaʻole hiki iā ʻoe ke hoʻihoʻi i ka blob inā ʻaʻole ʻoe i hoʻihoʻi. Ua loaʻa iā mākou kēia hewa: ERROR [ForkJoinPool.commonPool-worker-2] *SYSTEM [com.orientechnologies.orient.core.storage](http://com.orientechnologies.orient.core.storage/).fs.OFileClassic - $ANSI{green {db=security}} Error during data read for file 'privilege_5.pcl' 1-th attempt [java.io](http://java.io/).IOException: Bad address. ʻAʻole loaʻa ka Blob.
Ma ka paʻamau, nānā ʻo inotify-createrepo i kahi papa kuhikuhi /var/www/repos/rpm-repo/.
Hiki iā ʻoe ke hoʻololi i kēia papa kuhikuhi ma ka faila /etc/inotify-createrepo.conf.
E hoʻohana
Ke hoʻohui i kekahi faila i kahi papa kuhikuhi /var/www/repos/rpm-repo/ e hana ʻo inotifywait i kahi faila /tmp/need_create. Ke holo nei ka hana run_createrepo i loko o ka loop loop palena ʻole a nānā i ka faila /tmp/need_create. Inā loaʻa ka faila, a laila holo createrepo --update.
No ka loaʻa kiʻekiʻe o kahi hopena i loaʻa, manaʻo wau hiki iā ʻoe ke hoʻohana i nā kikowaena 2, Keepalived no HA a me Lsyncd no ka synchronization artifact. Lsyncd - he daemon e nānā i nā loli i ka papa kuhikuhi kūloko, hōʻuluʻulu iā lākou, a ma hope o kekahi manawa, hoʻomaka ka rsync e hoʻonohonoho iā lākou. Hōʻike ʻia nā kikoʻī a me nā hoʻonohonoho ma ka pou "ʻO ka hoʻonohonoho wikiwiki ʻana o kahi piliona faila".
webdav
Nui nā ala e hoʻouka ai i nā faila: SSH, NFS, WebDav. ʻO WebDav kahi koho hou a maʻalahi.
No WebDav, e hoʻohana mākou i Apache httpd. No ke aha ʻo Apache httpd i 2020 a ʻaʻole nginx?
Makemake au e hoʻohana i nā mea hana automated no ke kūkulu ʻana i nā modula Nginx + (no ka laʻana, Webdav).
Manaʻo wau e hana ʻoe i ke koena o ka hoʻonohonoho Apache httpd iā ʻoe iho.
Nginx i mua o Apache httpd
ʻAʻole like me Apache, hoʻohana ʻo Nginx i kahi hoʻohālike noiʻi noiʻi e pili ana i ka hanana, ʻo ia hoʻi, hoʻokahi wale nō kaʻina kikowaena HTTP e koi ʻia no kekahi helu o nā mea kūʻai aku. Hiki iā ʻoe ke hoʻohana i ka nginx a hoʻemi i ka ukana server.
nginx-front.conf config. Manaʻo wau e hana ʻoe i ke koena o ka hoʻonohonoho nginx iā ʻoe iho.