Xây dựng hình ảnh cơ sở Docker để phát triển Go

Tram Ho

Bắt đầu

Bootstraping một môi trường phát triển Go có thể khá đáng tiếc vì chúng ta cần phải đưa vào khá nhiều công cụ và phối hợp để có được một không gian làm việc dễ dàng làm việc, chẳng hạn như xem thay đổi và biên dịch lại tệp.

Trong bài viết này, tôi sẽ đưa các công cụ cần thiết cần thiết để phát triển Go thành một gói bằng cách xây dựng hình ảnh cơ sở Docker mà chúng ta có thể sử dụng lại cho sự phát triển trong tương lai. Những gì chúng ta cần bao gồm trong hình ảnh cơ sở là sau đây.

  • Tập tin watcher Entr
  • Cấu hình Git đã sử dụng SSH qua HTTPS để kéo các gói Go riêng tư
  • Tập lệnh tùy chỉnh để biên dịch lại dự án của chúng tôi khi tệp thay đổi

Thêm trình xem tệp

Để bắt đầu, chúng ta sẽ bắt đầu với việc biên dịch tệp nhị phân trình xem tệp. Mục tiêu của chúng tôi là có được một môi trường hộp cát hoạt động trong khi vẫn duy trì kích thước hình ảnh nhỏ nhất có thể. Chúng tôi sẽ làm như vậy bằng cách sử dụng bản dựng nhiều tầng của docker với Alpine Linux làm hình ảnh cơ sở.

Sau đó, chúng tôi cài đặt các phụ thuộc cần thiết để biên dịch một tệp nhị phân, lấy mã nguồn và thực hiện biên dịch.

Sau đó, chúng tôi sao chép tệp nhị phân cuối cùng từ /usr/local/bin vào giai đoạn xây dựng cuối cùng của chúng tôi, dựa trên hình ảnh docker chính thức của Go

Sau bước này, chúng ta đã sẵn sàng chuyển sang bước tiếp theo

Chơi đẹp với gói đi riêng

Bước tiếp theo là cấu hình git để có thể kéo vào gói riêng tư

Dòng 2 được sử dụng để thay đổi chuyển từ sử dụng HTTPS sang SSH. Dòng 3 tắt tính năng kiểm tra máy chủ nghiêm ngặt để loại bỏ nhu cầu tương tác của người dùng khi sử dụng ssh lần đầu tiên.

Thêm tập lệnh biên dịch lại tùy chỉnh

Và bước cuối cùng là viết một tập lệnh tùy chỉnh sử dụng tệp nhị phân của trình xem tệp và biên dịch lại dự án của chúng tôi sau đó có sự thay đổi mã. Chúng tôi thực hiện điều đó bằng cách sử dụng shell script, làm cho nó có thể thực thi được và chuyển nó đến đường dẫn nhị phân cục bộ có tên watch .


Đó là một hình ảnh hoàn chỉnh và cuối cùng cụ thể cho việc phát triển cờ vây. Để sử dụng nó cho dự án của bạn, bạn chỉ cần xây dựng nó và xuất bản nó lên kho lưu trữ docker của bạn, sau đó viết một Dockerfile và mở rộng nó khi cần trong dự án của bạn. Ví dụ
Chia sẻ bài viết ngay

Nguồn bài viết : Viblo