Zbuduj własne repozytorium Pkg z Poudriere

Od wersji 9.2 FreeBSD wprowadziło nowe narzędzie, które zastępuje stare polecenia pkg _ * - polecenia - pkg, znane również jako pkgng. Jest bardzo podobny do Debiana aptlub Fedory, yumale ma kilka bardzo fajnych funkcji. Jedną z nich jest możliwość łatwego korzystania z własnego, prywatnego repozytorium pakietów.

Dlaczego chcesz to zrobić? Oficjalne repozytoria pkg są zbudowane z drzewa portów FreeBSD z bardzo ograniczonym zestawem opcji. Na przykład oficjalny pakiet PHP nie obsługuje MySQL. Innym powodem może być chęć posiadania dwóch repozytoriów, jednego z włączonym X11 - na pulpicie - i drugiego z wyłączonym X11 - dla serwerów. Istnieje wiele opcji i możliwości, a ten samouczek pokaże, jak zbudować własne repozytorium za pomocą Poudriere , narzędzia do masowej budowy pakietów.

Zakładam, że masz świeżą VPS z zainstalowanym FreeBSD 10 x64. Przede wszystkim potrzebujesz drzewa portów w swoim systemie:

cd /usr
portsnap fetch extract

Następnie musisz zainstalować Poudriere ze źródła (domyślne opcje są w porządku!):

cd /usr/ports/ports-mgmt/poudriere
make install clean

Następnie utwórz podstawowy plik konfiguracyjny:

cp /usr/local/etc/poudriere.conf.sample /usr/local/etc/poudriere.conf

... i edytuj go zgodnie z własnymi potrzebami. Oto dobry początek:

FREEBSD_HOST=http://ftp.freebsd.org
RESOLV_CONF=/etc/resolv.conf
BASEFS=/usr/local/poudriere
POUDRIERE_DATA=$/data
USE_PORTLINT=no
USE_TMPFS=yes
DISTFILES_CACHE=/usr/ports/distfiles
CHECK_CHANGED_DEPS=yes
# Edit this according to your VPS' CPU.
PARALLEL_JOBS=1
NOLINUX=yes

Zamiast korzystać ze zwykłego portu twojego systemu, Poudriere używa własnej kopii. Musisz go uzyskać za pomocą następującego polecenia:

poudriere ports -c

Teraz stwórz więzienie dla konstruktora do działania w:

poudriere jail -c -j testjail -v 10.0-RELEASE -a amd64

Zanim zaczniesz budować pakiety, będziesz musiał powiedzieć Poudriere, co powinien zbudować. Otwórz swój ulubiony edytor tekstu i dodaj kilka pakietów:

www/firefox
im/pidgin
sysutils/tmux
editors/vim

... i zapisz plik pod /usr/local/etc/buildlist. Jeśli nie chcesz domyślnych opcji, możesz skonfigurować opcje dla każdego pakietu w tym pliku. Odbywa się to poprzez wydanie następującego polecenia:

poudriere options -cf /usr/local/etc/buildlist

W przeciwnym razie możesz zacząć budować:

poudriere bulk -f /usr/local/etc/buildlist -j testjail

Czas potrzebny na wykonanie tej operacji będzie się różnić w zależności od szybkości procesora VPS. Po zakończeniu procesu możesz znaleźć nowe pakiety posortowane według build-jail w /usr/local/poudriere/data/packages/.

Teraz potrzebujesz serwera, aby faktycznie obsługiwać te pakiety na innych komputerach. Wybrałem Nginx, ponieważ jest wydajny i lekki. Zainstaluj go przez porty (domyślne opcje są w porządku!):

cd /usr/ports/www/nginx
make install clean

Po zakończeniu instalacji musisz skonfigurować Nginx do obsługi katalogu pakietów. Aby to zrobić, edytuj za /usr/local/etc/nginx/nginx.confpomocą swojego ulubionego edytora tekstu:

server {
    listen       80;
    server_name  localhost;
    root /usr/local/poudriere/data/packages/testjail-default;
    location / {
            autoindex on;
    }
}

Na koniec upewnij się, że serwer WWW uruchamia się przy rozruchu:

echo "nginx_enable=YES" >> /etc/rc.conf

... i uruchom serwer:

/usr/local/etc/rc.d/nginx start

Możliwości Poudriere są ogromne. Możesz dowiedzieć się więcej o Poudriere, czytając wpis na stronie podręcznika. Jeśli planujesz używać takiej konfiguracji w środowisku produkcyjnym, w twoim najlepszym interesie będzie również przeczytanie o podpisywaniu pakietów i rozważenie zabezpieczenia połączenia z serwerem WWW za pomocą TLS. Ale na razie jesteś gotowy na rock!

Aby aktywować repozytorium na kliencie, uruchom następujące polecenia na komputerze klienckim:

mkdir -p /usr/local/etc/repos
vi /usr/local/etc/repos/myrepo.conf

Wypełnij myrepo.confnastępującą treścią. Możesz użyć dowolnej nazwy dla tego pliku, pod warunkiem, że ma on .confprzyrostek.

poudriere: {
  url: "http://yoururl"
  mirror_type: "http",
  enabled: yes
}

Następnie zaktualizuj bazę danych pakietów za pomocą polecenia:

pkg update

Możesz teraz instalować pakiety z nowego repozytorium!



Leave a Comment

Jak zainstalować TextPattern CMS 4.6.2 na FreeBSD 11 FAMP VPS

Jak zainstalować TextPattern CMS 4.6.2 na FreeBSD 11 FAMP VPS

Używasz innego systemu? TextPattern CMS 4.6.2 to prosty, elastyczny, bezpłatny i otwarty system zarządzania treścią (CMS), który umożliwia projektantom stron internetowych

Jak zainstalować forum NodeBB na FreeBSD 12

Jak zainstalować forum NodeBB na FreeBSD 12

Używasz innego systemu? NodeBB to oprogramowanie forum oparte na Node.js. Wykorzystuje gniazda sieciowe do natychmiastowych interakcji i powiadomień w czasie rzeczywistym. NodeB

Chroń resolv.conf przed DHCP na FreeBSD 10

Chroń resolv.conf przed DHCP na FreeBSD 10

Jeśli korzystasz z własnego programu tłumaczącego lub chcesz użyć jednego z zewnętrznych dostawców usług, może się okazać, że plik /etc/resolv.conf jest zastępowany przez DHCP

Jak zainstalować X-Cart 5 na FreeBSD 12

Jak zainstalować X-Cart 5 na FreeBSD 12

Używasz innego systemu? X-Cart to niezwykle elastyczna platforma eCommerce typu open source z mnóstwem funkcji i integracji. Kod źródłowy X-Cart jest hostem

Zainstaluj WordPress na OpenBSD 6.2

Zainstaluj WordPress na OpenBSD 6.2

Wprowadzenie WordPress to dominujący system zarządzania treścią w Internecie. Obsługuje wszystko, od blogów po złożone witryny z dynamiczną treścią

OpenBSD jako rozwiązanie e-commerce z PrestaShop i Apache

OpenBSD jako rozwiązanie e-commerce z PrestaShop i Apache

Wprowadzenie W tym samouczku pokazano OpenBSD jako rozwiązanie e-commerce wykorzystujące PrestaShop i Apache. Wymagany jest Apache, ponieważ PrestaShop ma złożony UR

Jak zainstalować Anchor CMS na FreeBSD 11 FAMP VPS

Jak zainstalować Anchor CMS na FreeBSD 11 FAMP VPS

Używasz innego systemu? Anchor CMS to bardzo prosty i niezwykle lekki, darmowy i otwarty system zarządzania treścią (CMS) Blog Engine, który

Jak zainstalować Tiny Tiny RSS Reader na FreeBSD 11 FAMP VPS

Jak zainstalować Tiny Tiny RSS Reader na FreeBSD 11 FAMP VPS

Używasz innego systemu? Tiny Tiny RSS Reader to darmowy i oparty na otwartych źródłach, internetowy host czytnika i agregatora kanałów informacyjnych (RSS / Atom), przeznaczony do przydzielania

Jak zainstalować WonderCMS na FreeBSD 12

Jak zainstalować WonderCMS na FreeBSD 12

Używasz innego systemu? WonderCMS jest otwartym, szybkim i małym, płaskim plikiem CMS napisanym w PHP. Kod źródłowy WonderCMS jest hostowany na Github. Ten przewodnik wil

Jak włączyć TLS 1.3 w Apache na FreeBSD 12

Jak włączyć TLS 1.3 w Apache na FreeBSD 12

Używasz innego systemu? TLS 1.3 to wersja protokołu Transport Layer Security (TLS), która została opublikowana w 2018 roku jako proponowany standard w RFC 8446

Jak zainstalować Dolibarr na FreeBSD 12

Jak zainstalować Dolibarr na FreeBSD 12

Używasz innego systemu? Dolibarr to oprogramowanie do planowania zasobów przedsiębiorstwa (ERP) i zarządzania relacjami z klientami (CRM) dla firm. Dolibarr

Jak zainstalować Paste 2.1 na FreeBSD 11 FAMP VPS

Jak zainstalować Paste 2.1 na FreeBSD 11 FAMP VPS

Używasz innego systemu? Paste 2.1 to prosta i elastyczna, darmowa i otwarta aplikacja pastebin do przechowywania kodu, tekstu i innych. To było początkowo

Jak zainstalować BigTree CMS 4.2 na FreeBSD FAMP VPS

Jak zainstalować BigTree CMS 4.2 na FreeBSD FAMP VPS

Używasz innego systemu? BigTree CMS 4.2 to szybki i lekki, bezpłatny i otwarty system zarządzania treścią dla przedsiębiorstw (CMS) z rozbudowanym

Utwórz plik wymiany na FreeBSD 10

Utwórz plik wymiany na FreeBSD 10

Po wyjęciu z pudełka serwery Vultr FreeBSD nie są skonfigurowane tak, aby zawierały przestrzeń wymiany. Jeśli twoja intencja dotyczy jednorazowego wystąpienia chmury, prawdopodobnie nie jest to konieczne

Skonfiguruj MariaDB na OpenBSD 6

Skonfiguruj MariaDB na OpenBSD 6

W tym artykule pokażę, jak zainstalować MariaDB na OpenBSD 6 i skonfigurować, aby był dostępny dla chrootowanego serwera WWW (Apache lub Nginx). Będziesz także

Jak zainstalować stos Apache, MySQL i PHP (FAMP) na FreeBSD 12.0

Jak zainstalować stos Apache, MySQL i PHP (FAMP) na FreeBSD 12.0

Wprowadzenie Stos FAMP, który jest porównywalny ze stosem LAMP w systemie Linux, to zbiór oprogramowania typu open source, które zazwyczaj instaluje się razem

Jak zainstalować DokuWiki na FreeBSD 12

Jak zainstalować DokuWiki na FreeBSD 12

Używasz innego systemu? DokuWiki to program wiki typu open source napisany w PHP, który nie wymaga bazy danych. Przechowuje dane w plikach tekstowych. DokuWik

Konfigurowanie platformy Ghost Professional Publishing w OpenBSD 6

Konfigurowanie platformy Ghost Professional Publishing w OpenBSD 6

Ghost to najnowszy i najlepszy start w rywalizacji z WordPress. Tworzenie motywów jest szybkie i łatwe do nauczenia się, ponieważ twórcy Ghost zdecydowali się użyć obu

Jak zainstalować album fotograficzny Lychee 3.1 na FreeBSD 11 FAMP VPS

Jak zainstalować album fotograficzny Lychee 3.1 na FreeBSD 11 FAMP VPS

Używasz innego systemu? Lychee 3.1 Photo Album to proste i elastyczne, bezpłatne i otwarte narzędzie do zarządzania zdjęciami, które działa na serwerze VPS. Instaluje się

Zmień rozmiar puli pamięci ZFS na FreeBSD / TrueOS

Zmień rozmiar puli pamięci ZFS na FreeBSD / TrueOS

Podczas aktualizacji instancji VPS na Vultr system plików Linux jest automatycznie zmieniany. Podczas uruchamiania FreeBSD z zaawansowanym systemem plików ZFS, niektóre ręczne

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.