JFrog Artifactory là một ứng dụng quản lý kho lưu trữ nguồn mở có thể tích hợp với các công cụ tích hợp và phân phối liên tục. Đây là một công cụ đa nền tảng cho phép DevOps quản lý nhiều kho lưu trữ gói. Công cụ này cung cấp tính khả dụng cao và sao chép đa trang web để tự động hóa đường ống của bạn và cho phép phát hành nhanh hơn.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt JFrog Artifactory trên Ubuntu 20.04.
Đầu tiên, cài đặt gói Gnupg2 bằng lệnh sau:
Tiếp theo, tải xuống và thêm khóa GPG bằng lệnh sau:
Tiếp theo, thêm kho lưu trữ JFrog Artifactory bằng lệnh sau:
Sau khi kho lưu trữ được thêm vào, hãy cập nhật kho lưu trữ và cài đặt JFrog Artifactory bằng lệnh sau:
Sau khi quá trình cài đặt hoàn tất thành công, bạn sẽ nhận được kết quả sau:
Tiếp theo, hãy khởi động dịch vụ Artifactory và cho phép dịch vụ này khởi động khi khởi động lại hệ thống bằng lệnh sau:
Tiếp theo, hãy xác minh trạng thái của dịch vụ Artifactory bằng lệnh sau:
Bạn sẽ nhận được kết quả đầu ra sau:
Lúc này, Artifactory đã được cài đặt và đang lắng nghe trên cổng 8082. Bây giờ bạn có thể tiếp tục đến bước tiếp theo.
Sau khi cài đặt Nginx, hãy tạo tệp cấu hình máy chủ ảo Nginx mới bằng lệnh sau:
Thêm các dòng sau:
Lưu và đóng tệp, sau đó kích hoạt máy chủ ảo Nginx bằng lệnh sau:
Tiếp theo, hãy xác minh Nginx xem có lỗi cú pháp nào không bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Cuối cùng, hãy khởi động lại dịch vụ Nginx để triển khai các thay đổi:
Tại thời điểm này, Nginx được cấu hình để phục vụ trang web JFrog. Bây giờ bạn có thể tiến hành bước tiếp theo.
Tiếp theo, hãy cập nhật kho lưu trữ và cài đặt máy khách Certbot bằng lệnh sau:
Sau khi máy khách Certbot được cài đặt, hãy chạy lệnh sau để tải xuống và cài đặt Let's Encrypt SSL cho trang web của bạn:
Bạn sẽ được yêu cầu cung cấp email hợp lệ và chấp nhận điều khoản dịch vụ như hiển thị bên dưới:
Tiếp theo, chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không:
Nhập 2 và nhấn enter để bắt đầu quy trình. Sau khi chứng chỉ được cài đặt, bạn sẽ thấy kết quả sau:
Cung cấp tên người dùng mặc định là "admin" và mật khẩu là "password", rồi nhấp vào nút Đăng nhập. Bạn sẽ thấy trang sau:
Bây giờ, hãy nhấp vào nút Bắt đầu . Bạn sẽ thấy màn hình đặt lại mật khẩu:
Đặt mật khẩu quản trị viên mới và nhấp vào nút Tiếp theo. Bạn sẽ thấy màn hình sau:
Đặt URL cơ sở của bạn và nhấp vào nút Tiếp theo. Bạn sẽ thấy màn hình sau:
Chọn kho lưu trữ mong muốn và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:
Bây giờ, hãy nhấp vào nút Hoàn tất. Bạn sẽ thấy bảng điều khiển Artifactory trong màn hình sau:
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt JFrog Artifactory trên Ubuntu 20.04.
Điều kiện tiên quyết
- Một máy chủ chạy Ubuntu 20.04.
- Một tên miền hợp lệ được trỏ đến máy chủ của bạn.
- Một mật khẩu gốc được cấu hình trên máy chủ của bạn.
Cài đặt JFrog Artifactory
Theo mặc định, JFrog Artifactory không khả dụng trong kho lưu trữ mặc định của Ubuntu 20.04. Vì vậy, bạn sẽ cần thêm kho lưu trữ JFrog Artifactory vào hệ thống của mình.Đầu tiên, cài đặt gói Gnupg2 bằng lệnh sau:
Mã:
apt-get install gnupg2 -y
Mã:
wget -qO - https://api.bintray.com/orgs/jfrog/keys/gpg/public.key | apt-key add -
Mã:
echo "deb https://jfrog.bintray.com/artifactory-debs bionic main" | tee /etc/apt/sources.list.d/jfrog.list
Mã:
apt-get update -y
apt-get install jfrog-artifactory-oss -y
Mã:
************ THÀNH CÔNG ****************Quá trình cài đặt Artifactory đã hoàn tất thành công.LƯU Ý: Rất khuyến khích sử dụng Artifactory với cơ sở dữ liệu bên ngoài (MySQL, Oracle, Microsoft SQL Server, PostgreSQL, MariaDB). Để biết chi tiết về cách cấu hình cơ sở dữ liệu, hãy tham khảo https://service.jfrog.org/installer/Configuring+the+DatabaseKhởi động Artifactory bằng:> systemctl start artifactory.serviceKiểm tra trạng thái Artifactory bằng:> systemctl status artifactory.serviceThư mục cài đặt được đặt thành /opt/jfrog/artifactoryBạn có thể tìm thêm thông tin trong thư mục nhật ký /opt/jfrog/artifactory/var/logCác mẫu cấu hình hệ thống có thể được tìm thấy trong /opt/jfrog/artifactory/var/etcSao chép bất kỳ cấu hình nào bạn muốn sửa đổi từ mẫu vào /opt/jfrog/artifactory/var/etc/system.yamlKích hoạt tập lệnh di chuyển, tập lệnh này sẽ di chuyển nếu cần ...Đang xử lý các kích hoạt cho man-db (2.9.1-1) ...Đang xử lý các kích hoạt cho systemd (245.4-4ubuntu3) ...
Mã:
systemctl start artifactory
systemctl enable artifactory
Mã:
systemctl status artifactory
Mã:
? artifactory.service - Dịch vụ Artifactory Đã tải: đã tải (/lib/systemd/system/artifactory.service; đã bật; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ CN 2020-06-07 12:42:39 UTC; 40 giây trước Tiến trình: 15671 ExecStart=/opt/jfrog/artifactory/app/bin/artifactoryManage.sh start (code=exited, status=0/SUCCESS) PID chính: 17974 (java) Nhiệm vụ: 0 (giới hạn: 9522) Bộ nhớ: 2,4M CGroup: /system.slice/artifactory.service ? 17974 /opt/jfrog/artifactory/app/third-party/java/bin/java -Djava.util.logging.config.file=/opt/jfrog/artifactory/app/artifacto>07/06 12:42:38 ubuntu2004 su[18380]: (đến artifactory) root trên none07/06 12:42:38 ubuntu2004 su[18380]: pam_unix(su:session): phiên mở cho người dùng artifactory bởi (uid=0)07/06 12:42:38 ubuntu2004 su[18380]: pam_unix(su:session): phiên đóng cho người dùng artifactory07/06 12:42:38 ubuntu2004 su[18534]: (đến artifactory) root trên none07/06 12:42:38 ubuntu2004 su[18534]: pam_unix(su:session): phiên mở cho người dùng artifactory bởi (uid=0)07/06 12:42:39 ubuntu2004 su[18534]: pam_unix(su:session): phiên đã đóng đối với người dùng artifactory07/06 12:42:39 ubuntu2004 su[18655]: (đến artifactory) không có quyền root07/06 12:42:39 ubuntu2004 su[18655]: pam_unix(su:session): phiên đã mở đối với người dùng artifactory bởi (uid=0)07/06 12:42:39 ubuntu2004 su[18655]: pam_unix(su:session): phiên đã đóng đối với người dùng artifactory07/06 12:42:39 ubuntu2004 systemd[1]: Đã bắt đầu dịch vụ Artifactory.
Cấu hình Nginx làm Proxy ngược
Tiếp theo, bạn sẽ cần cấu hình Nginx làm proxy ngược cho JFrog. Trước tiên, hãy cài đặt máy chủ web Nginx bằng lệnh sau:
Mã:
apt-get install nginx -y
Mã:
nano /etc/nginx/sites-available/jfrog.conf
Mã:
upstream jfrog { server 127.0.0.1:8082 weight=100 max_fails=5 fail_timeout=5;}server { listen 80; server_name jfrog.linuxbuz.com; location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://jfrog/; }}
Mã:
ln -s /etc/nginx/sites-available/jfrog.conf /etc/nginx/sites-enabled/
Mã:
nginx -t
Mã:
nginx: cú pháp tệp cấu hình /etc/nginx/nginx.conf là oknginx: kiểm tra tệp cấu hình /etc/nginx/nginx.conf thành công
Mã:
systemctl restart nginx
Bảo mật JFrog bằng Let's Encrypt SSL
Bạn nên bảo mật JFrog bằng Let's Encrypt SSL. Trước tiên, hãy thêm kho lưu trữ Certbot bằng lệnh sau:
Mã:
apt-get install software-properties-common -y
add-apt-repository ppa:ahasenack/certbot-tlssni01-1875471
Mã:
apt-get update -y
apt-get install certbot python3-certbot-nginx -y
Mã:
certbot --nginx -d jfrog.linuxbuz.com
Mã:
Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.logCác plugin đã chọn: Authenticator nginx, Installer nginxNhập địa chỉ email (dùng để gia hạn khẩn cấp và thông báo bảo mật) (Nhập 'c' đểhủy): [emailprotected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Vui lòng đọc Điều khoản dịch vụ tạihttps://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Bạn phảiđồng ý để đăng ký với máy chủ ACME tạihttps://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)gree/(C)ancel: A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Bạn có sẵn lòng chia sẻ địa chỉ email của mình với Electronic Frontier Foundation, đối tác sáng lập của dự án Let's Encrypt và tổ chức phi lợi nhuận phát triển Certbot không? Chúng tôi muốn gửi cho bạn email về công việc của chúng tôimã hóa web, tin tức EFF, các chiến dịch và các cách hỗ trợ tự do kỹ thuật số.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(C)ó/(K)o: CNhận chứng chỉ mớiThực hiện các thử thách sau:Thử thách http-01 cho jfrog.linuxbuz.comĐang chờ xác minh...Đang dọn dẹp các thử tháchTriển khai chứng chỉ cho VirtualHost /etc/nginx/sites-enabled/jfrog.conf
Mã:
Vui lòng chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không, xóa quyền truy cập HTTP.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1: Không chuyển hướng - Không thực hiện thêm bất kỳ thay đổi nào đối với cấu hình máy chủ web.2: Chuyển hướng - Chuyển hướng tất cả các yêu cầu đến quyền truy cập HTTPS an toàn. Chọn mục này chocác trang web mới hoặc nếu bạn tin chắc rằng trang web của mình hoạt động trên HTTPS. Bạn có thể hoàn tácthay đổi này bằng cách chỉnh sửa cấu hình máy chủ web của mình.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Chọn số thích hợp [1-2] rồi [enter] (nhấn 'c' để hủy): 2
Mã:
Chuyển hướng tất cả lưu lượng truy cập trên cổng 80 sang ssl trong /etc/nginx/sites-enabled/jfrog.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Xin chúc mừng! Bạn đã bật thành công https://jfrog.linuxbuz.comBạn nên kiểm tra cấu hình của mình tại:https://www.ssllabs.com/ssltest/analyze.html?d=jfrog.linuxbuz.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -LƯU Ý QUAN TRỌNG: - Xin chúc mừng! Chứng chỉ và chuỗi của bạn đã được lưu tại: /etc/letsencrypt/live/jfrog.linuxbuz.com/fullchain.pem Tệp khóa của bạn đã được lưu tại: /etc/letsencrypt/live/jfrog.linuxbuz.com/privkey.pem Chứng chỉ của bạn sẽ hết hạn vào ngày 07-09-2020. Để có phiên bản mới hoặc đã chỉnh sửa của chứng chỉ này trong tương lai, chỉ cần chạy lại certbot với tùy chọn "certonly". Để gia hạn không tương tác *tất cả* các chứng chỉ của bạn, hãy chạy "certbot renew" - Thông tin đăng nhập tài khoản của bạn đã được lưu trong thư mục cấu hình Certbot của bạn tại /etc/letsencrypt. Bây giờ bạn nên sao lưu an toàn thư mục này. Thư mục cấu hình này cũng sẽ chứa các chứng chỉ và khóa riêng do Certbot thu được, do đó, việc sao lưu thường xuyên thư mục này là lý tưởng. - Nếu bạn thích Certbot, vui lòng cân nhắc hỗ trợ công việc của chúng tôi bằng cách: Quyên góp cho ISRG / Let's Encrypt: https://letsencrypt.org/donate Quyên góp cho EFF: https://eff.org/donate-le - Chúng tôi không thể đăng ký cho bạn danh sách gửi thư EFF vì địa chỉ email của bạn có vẻ không hợp lệ. Bạn có thể thử lại sau bằng cách truy cập https://act.eff.org.
Truy cập Artifactory Web UI
Bây giờ, hãy mở trình duyệt web của bạn và nhập URL https://jfrog.linuxbuz.com. Bạn sẽ được chuyển hướng đến trang sau:Cung cấp tên người dùng mặc định là "admin" và mật khẩu là "password", rồi nhấp vào nút Đăng nhập. Bạn sẽ thấy trang sau:
Bây giờ, hãy nhấp vào nút Bắt đầu . Bạn sẽ thấy màn hình đặt lại mật khẩu:
Đặt mật khẩu quản trị viên mới và nhấp vào nút Tiếp theo. Bạn sẽ thấy màn hình sau:
Đặt URL cơ sở của bạn và nhấp vào nút Tiếp theo. Bạn sẽ thấy màn hình sau:
Chọn kho lưu trữ mong muốn và nhấp vào nút Tiếp theo. Bạn sẽ thấy trang sau:
Bây giờ, hãy nhấp vào nút Hoàn tất. Bạn sẽ thấy bảng điều khiển Artifactory trong màn hình sau: