GitBucket, một hệ thống phát triển hợp tác theo phong cách GitHub

GitBucket

GitBucket là một hệ thống phát triển cộng tác tự lưu trữ que giống với các dịch vụ như GitHub hoặc GitLab, ngoài ra nó có một giao diện khá giống với những cái này. GitBucket tự đặt mình như một khung phát triển cho các hệ thống hoạt động với các kho lưu trữ Git. Hệ thống này nổi bật nhờ cài đặt dễ dàng, khả năng mở rộng chức năng thông qua các plugin và hỗ trợ API GitHub.

GitBucket đi kèm với một tập hợp các tính năng phạm vi trong đó bao gồm, hỗ trợ GitLFS, các vấn đề, yêu cầu kéo, thông báo, hệ thống plugin, kho lưu trữ công khai và riêng tư của Git, cùng với đó cũng có thể dễ dàng tích hợp với LDAP để quản lý tài khoản và nhóm. Mã GitBucket được viết bằng Scala và được cấp phép theo Apache 2.0.

Các đặc điểm chính GitBucket nêu bật những điều sau:

  • Hỗ trợ các kho lưu trữ Git công khai và riêng tư với quyền truy cập qua HTTP và SSH
  • Hỗ trợ GitLFS
  • Giao diện điều hướng kho với hỗ trợ chỉnh sửa tệp trực tuyến;
  • Sự hiện diện của Wiki để chuẩn bị tài liệu
  • Giao diện xử lý thông báo lỗi
  • Công cụ để xử lý các yêu cầu thay đổi
  • Hệ thống thông báo qua email
  • Hệ thống quản lý người dùng và nhóm đơn giản với hỗ trợ tích hợp LDAP
  • Một hệ thống plugin với tập hợp các plugin được phát triển bởi các thành viên cộng đồng.

Dưới dạng plugin, các tính năng như tạo ghi chú chung, đăng thông báo, sao lưu, hiển thị thông báo trên màn hình, vẽ cam kết, vẽ AsciiDoc được triển khai.

Làm thế nào để cài đặt GitBucket trên máy chủ Ubuntu, máy tính để bàn Ubuntu hoặc các dẫn xuất?

Như đã đề cập ở phần đầu, GitBucket là một hệ thống phát triển cộng tác được tự lưu trữ, vì vậy việc cài đặt điều này là nhằm vào các máy chủ, mặc dù nó cũng có thể có thể nhận ra cài đặt trong các phiên bản máy tính để bàn Ubuntu hoặc một số dẫn xuất của nó.

Bạn chỉ cần lưu ý rằng trong hướng dẫn thay vì đặt một miền, bạn phải sử dụng IP cục bộ trong mạng gia đình của mình, bạn cũng phải xem xét việc cài đặt bổ sung các gói cần thiết để khởi chạy một dịch vụ web (PHP, Apache, một số cơ sở dữ liệu tương thích) (MySQL hoặc PostgreSQL) Tôi có thể khuyên bạn cài đặt Xampp cho Linux hoặc Lamp nổi tiếng.

Để cài đặt từ GitBucket, đầu tiên chúng ta phải cài đặt gói java trên hệ thống, vì vậy nếu bạn không có nó, chỉ cần chạy lệnh sau:

sudo apt-get install default-jdk -y

Bây giờ chúng tôi sẽ tạo một nhóm mới và một người dùng để có thể chạy GitBucket

sudo groupadd -g 555 gitbucketsudo useradd -g gitbucket --no-user-group --home-dir /opt/gitbucket --no-create-home --shell /usr/sbin/nologin --system --uid 555 gitbucket

Thực hiện điều này, bây giờ chúng tôi sẽ tải xuống phiên bản ổn định hiện tại hơn là phiên bản 4.33 từ liên kết tiếp theo hoặc từ thiết bị đầu cuối với wget:

wget https://github.com/gitbucket/gitbucket/releases/download/4.33.0/gitbucket.war

Sau khi quá trình tải xuống hoàn tất, chúng ta sẽ phải gán một không gian cho GitBucket. Đối với điều này, chúng tôi sẽ nhập lệnh sau:

mkdir /opt/gitbucket

Bây giờ chỉ chúng ta phải di chuyển tệp đã tải xuống vào thư mục mới được tạo:

mv gitbucket.war /opt/gitbucket

Bây giờ chúng ta phải cấp quyền cho người dùng mà chúng tôi tạo để nó có thể hoạt động trên thư mục đã tạo:

chown -R gitbucket:gitbucket /opt/gitbucket

Đã có với nó, chúng tôi sẽ tạo một dịch vụ trong hệ thống, chúng tôi sẽ nhập:

sudo nano /etc/systemd/system/gitbucket.service

Trong tệp, chúng tôi sẽ đặt như sau:

# GitBucket Service
[Unit]
Description=Manage Java service

[Service]
WorkingDirectory=/opt/gitbucket
ExecStart=/usr/bin/java -Xms128m -Xmx256m -jar gitbucket.war
User=gitbucket
Group=gitbucket
Type=simple
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

Chúng tôi lưu bằng Ctrl + O và thoát bằng Ctrl + X và chúng tôi sẽ tải lại tất cả các dịch vụ với:

sudo systemctl daemon-reload

Và chúng tôi kích hoạt cái mà chúng tôi tạo bằng:

sudo systemctl start gitbucket
sudo systemctl enable gitbucket

Dịch vụ đã được kích hoạt và bắt đầu, chúng ta phải kết nối cơ sở dữ liệu:

sudo nano /opt/gitbucket/database.conf
db {
url = "jdbc:h2:${DatabaseHome};MVCC=true"
user = "sa"
password = "sa"
}

Và hoàn thành nó Dịch vụ hiện có thể được truy cập từ miền của bạn vào không gian được cấp phát http://yourdomain.com:8080 hoặc cài đặt cục bộ với localhost: 8080

  • Người dùng: root
  • Mật khẩu: root

Cuối cùng, bạn nên triển khai một proxy ngược, nhưng quy trình này khác với Nginx, Apache hoặc Candy. Bạn có thể kiểm tra tài liệu về nó trong liên kết sau.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.