2025年10月16日木曜日

go-acme lego をローカルでビルドする方法

go-acme lego をローカルでビルドする方法

概要

流れを紹介します

環境

  • Ubuntu 24.04
  • golang 1.24.0

リポジトリのクローン

  • mkdir -p $GOPATH/src/github.com/go-acme
  • cd $GOPATH/src/github.com/go-acme
  • git clone git@github.com:YOUR_USERNAME/lego.git
  • cd lego

ビルド準備

  • make fmt

これでビルドに必要な golang を自動でインストールしてくれます
/usr/bin/go にあります

  • curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/HEAD/install.sh | sh -s -- -b $(go env GOPATH)/bin v2.5.0
  • make checks

lint してくれます
結構時間がかかります
またマシンリソースも必要になります

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
 591663 devops    20   0 4634332   3.3g  34048 S 118.0  42.9  12:40.54 golangci-lint
golangci-lint run
0 issues.

となれば OK です

  • make test

ユニットテストを実行します
これも結構時間がかかります

ビルド

  • make build

成功すると dist/lego が作成されます
リントやテスト同様これも結構時間がかかります

実行

NIFCLOUD_ACCESS_KEY_ID=xxx \
NIFCLOUD_SECRET_ACCESS_KEY=xxx \
NIFCLOUD_PROPAGATION_TIMEOUT=1800 \
NIFCLOUD_POLLING_INTERVAL=40 \
NIFCLOUD_TTL=40 \
dist/lego \
--path /tmp/lego_test \
--email your@mail \
--dns nifcloud \
--domains test.your.domain \
--accept-tos
run

最後に

あとはブランチを作成し自分のリポジトリにpushしRPを作成すればOKです

参考サイト

0 件のコメント:

コメントを投稿