コンテンツにスキップ

ビルドとデプロイ

本ページでは OpsAnt のビルドとデプロイの流れについて説明します。

ローカルでの事前ビルド

リリースのたびに、まずローカルでフロントエンドと opsmini-server をビルドし、git にコミットします。

フロントエンド

cd frontend
npm run build

ビルド成果物は static/opsant/ に出力され、SPA エントリは自動的に templates/opsant/index.html に書き込まれます。

opsmini-server(Go)

export PATH=/Users/vicky/go-sdk125/go/bin:$PATH GOPROXY=https://goproxy.cn,direct
cd opsmini-server
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -o bin/opsmini-server-linux-amd64 ./cmd/opsmini-server
CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -ldflags="-s -w" -o bin/opsmini-server-linux-arm64 ./cmd/opsmini-server

成果物をコミット:

git add -A && git commit -m "build: 预构建前端 + opsmini-server"

イメージのビルド

ビルドコンテキストはソースディレクトリの親ディレクトリです(うち opsant/ がソースディレクトリ):

cd /opt
docker build -f opsant/docker/Dockerfile -t registry.cn-beijing.aliyuncs.com/opsany/opsany-proxy-opsant:2.3.5 .

# arm64 架构
docker build -f opsant/docker/Dockerfile-arm64 -t registry.cn-beijing.aliyuncs.com/opsany/opsany-proxy-opsant:2.3.5-arm64 .

アップグレード

アップグレードスクリプトを使用して新しいイメージを取得し、コンテナを再構築します:

cd /opt/opsant/install
./opsant-update.sh proxy 2.3.5

注意事項

  • フロントエンドと opsmini-server はいずれもローカルで事前ビルドしてコミットするものであり、イメージ内ではコンパイルされません
  • リリース前にデータベースのマイグレーションとバックアップを完了することを推奨します