Hướng dẫn xây dựng kho lưu trữ Pkg của riêng bạn với Poudriere

Kể từ phiên bản 9.2, FreeBSD đã giới thiệu một công cụ mới để thay thế các lệnh pkg _ * - cũ - pkgcòn được gọi là pkgng. Nó rất giống với Debian apthay Fedora yumnhưng có một số tính năng rất hay. Một trong số đó là khả năng dễ dàng sử dụng kho gói riêng của bạn.

Tại sao bạn muốn làm điều đó? Các kho lưu trữ pkg chính thức được xây dựng từ cây cổng của FreeBSD với một bộ tùy chọn rất hạn chế. Ví dụ, gói chính thức cho PHP thiếu hỗ trợ cho MySQL. Một lý do khác có thể là bạn muốn có hai kho lưu trữ, một kho lưu trữ được bật X11 - cho máy tính để bàn của bạn - và một kho lưu trữ X11 bị vô hiệu hóa - cho các máy chủ của bạn. Có rất nhiều tùy chọn và khả năng, và hướng dẫn này sẽ chỉ cho bạn cách xây dựng kho lưu trữ của riêng bạn với Poudriere , một công cụ dành cho các gói xây dựng hàng loạt.

Tôi giả sử rằng bạn có một VPS mới với FreeBSD 10 x64 được cài đặt. Trước hết, bạn cần cây cổng trên hệ thống của bạn:

cd /usr
portsnap fetch extract

Sau đó, bạn cần cài đặt Poudriere từ nguồn (Các tùy chọn mặc định vẫn ổn!):

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

Tiếp theo, tạo một tệp cấu hình cơ bản:

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

... Và chỉnh sửa nó theo nhu cầu của bạn. Sau đây là một khởi đầu tốt:

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

Thay vì sử dụng portstree thông thường của hệ thống của bạn, Poudriere sử dụng bản sao của chính nó. Bạn phải lấy nó bằng lệnh sau:

poudriere ports -c

Bây giờ, tạo một nhà tù để người xây dựng chạy trong:

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

Trước khi bạn có thể bắt đầu xây dựng các gói, bạn thực sự sẽ phải nói với Poudriere những gì nó nên xây dựng. Mở trình soạn thảo văn bản yêu thích của bạn và thêm một số gói:

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

... và lưu tập tin dưới /usr/local/etc/buildlist. Nếu bạn không muốn các tùy chọn mặc định, thì bạn có thể định cấu hình các tùy chọn cho từng gói trong tệp đó. Điều này được thực hiện bằng cách ban hành lệnh sau:

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

Nếu không, bạn có thể bắt đầu xây dựng:

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

Lượng thời gian thao tác này sẽ thay đổi dựa trên tốc độ CPU của VPS của bạn. Sau khi quá trình kết thúc, các gói mới của bạn có thể được tìm thấy, được sắp xếp theo bản dựng, trong /usr/local/poudriere/data/packages/.

Bây giờ, bạn cần một máy chủ web để thực sự phục vụ các gói đó cho các máy khác của bạn. Tôi đã chọn Nginx vì nó hiệu quả và nhẹ. Cài đặt nó qua cổng (Các tùy chọn mặc định vẫn ổn!):

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

Sau khi quá trình cài đặt hoàn tất, bạn cần định cấu hình Nginx để phục vụ thư mục gói. Để làm điều đó, chỉnh sửa /usr/local/etc/nginx/nginx.confvới trình soạn thảo văn bản yêu thích của bạn:

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

Cuối cùng, hãy đảm bảo máy chủ web khởi động khi khởi động:

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

... và khởi động máy chủ:

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

Khả năng với Poudriere là rất lớn. Bạn có thể tìm hiểu thêm về Poudriere bằng cách đọc mục nhập trang. Nếu bạn có kế hoạch sử dụng một thiết lập như thế này trong môi trường sản xuất, bạn cũng nên đọc về việc ký gói và xem xét việc bảo mật kết nối với máy chủ web của bạn bằng TLS. Nhưng bây giờ, bạn đã sẵn sàng để đá!

Để kích hoạt kho lưu trữ trên máy khách, hãy chạy các lệnh này trên máy khách:

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

Dân trí myrepo.confvới nội dung sau. Bạn có thể sử dụng bất kỳ tên nào cho tệp này, miễn là nó có .confhậu tố.

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

Tiếp theo, cập nhật cơ sở dữ liệu gói bằng lệnh:

pkg update

Bây giờ bạn có thể cài đặt các gói ra khỏi kho lưu trữ mới của bạn!



Leave a Comment

ReactOS: Đây có phải là tương lai của Windows?

ReactOS: Đây có phải là tương lai của Windows?

ReactOS, một hệ điều hành mã nguồn mở và miễn phí đã có phiên bản mới nhất. Liệu nó có thể đáp ứng đủ nhu cầu của người dùng Windows hiện đại và hạ gục Microsoft? Hãy cùng tìm hiểu thêm về trải nghiệm hệ điều hành kiểu cũ nhưng mới hơn này.

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Các cuộc tấn công ransomware đang gia tăng, nhưng liệu AI có thể giúp đối phó với loại virus máy tính mới nhất? AI có phải là câu trả lời? Đọc ở đây biết là AI boone hay cấm

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Whatsapp cuối cùng đã ra mắt ứng dụng Máy tính để bàn cho người dùng Mac và Windows. Giờ đây, bạn có thể truy cập Whatsapp từ Windows hoặc Mac một cách dễ dàng. Có sẵn cho Windows 8+ và Mac OS 10.9+

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Hãy đọc phần này để biết Trí tuệ nhân tạo đang trở nên phổ biến như thế nào đối với các công ty quy mô nhỏ và làm thế nào nó đang tăng khả năng khiến họ phát triển và giúp đối thủ cạnh tranh của họ có thể cạnh tranh.

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Gần đây Apple đã phát hành macOS Catalina 10.15.4 một bản cập nhật bổ sung để khắc phục các sự cố nhưng có vẻ như bản cập nhật đang gây ra nhiều vấn đề hơn dẫn đến việc máy mac bị chai. Đọc bài viết này để tìm hiểu thêm

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Máy tính của chúng tôi lưu trữ tất cả dữ liệu một cách có tổ chức được gọi là hệ thống tệp Ghi nhật ký. Đây là một phương pháp hiệu quả cho phép máy tính tìm kiếm và hiển thị các tệp ngay khi bạn nhấn tìm kiếm. Https://wethegeek.com/? P = 94116 & preview = true

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Khi Khoa học phát triển với tốc độ nhanh chóng, chiếm rất nhiều nỗ lực của chúng ta, những rủi ro của việc phục tùng bản thân trước một Điểm kỳ dị không thể giải thích cũng tăng lên. Hãy đọc, điểm kỳ dị có thể có ý nghĩa gì đối với chúng ta.

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Tác động của trí tuệ nhân tạo trong chăm sóc sức khỏe 2021

Tác động của trí tuệ nhân tạo trong chăm sóc sức khỏe 2021

AI trong lĩnh vực chăm sóc sức khỏe đã có những bước tiến nhảy vọt so với những thập kỷ trước. Vì vậy, tương lai của AI trong Chăm sóc sức khỏe vẫn đang phát triển từng ngày.