feat: as docker mirror registry

feat: add global proxy config
upgrade: upgrade front(angular) to 19
chore: deployment staff
  1. Dockerfile: build frontend, backend, and run in nginx base image
This commit is contained in:
loveuer
2024-12-23 00:07:44 -08:00
parent aac6c67a5f
commit 6e866b83e4
57 changed files with 22226 additions and 7343 deletions

View File

@ -3,17 +3,19 @@ package blobs
import (
"bytes"
"context"
"io"
"strings"
"nf-repo/internal/interfaces"
"nf-repo/internal/model"
"nf-repo/internal/verify"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/config"
"github.com/aws/aws-sdk-go-v2/credentials"
"github.com/aws/aws-sdk-go-v2/service/s3"
"github.com/aws/aws-sdk-go-v2/service/s3/types"
"github.com/sirupsen/logrus"
"io"
"nf-repo/internal/interfaces"
"nf-repo/internal/model"
"nf-repo/internal/verify"
"strings"
"github.com/loveuer/nf/nft/log"
)
type s3Handler struct {
@ -76,22 +78,17 @@ func (s *s3Handler) Put(ctx context.Context, repo string, hash model.Hash, rc io
ACL: types.ObjectCannedACLPublicRead,
Body: bytes.NewReader(bs),
}, s3.WithAPIOptions(
//v4.AddUnsignedPayloadMiddleware,
//v4.RemoveComputePayloadSHA256Middleware,
// v4.AddUnsignedPayloadMiddleware,
// v4.RemoveComputePayloadSHA256Middleware,
)); err != nil {
logrus.
WithField("path", "s3Handler.Put").
WithField("err", err).
Debug()
log.Debug("s3Handler: put object err, err = %s", err.Error())
}
return err
}
func (s *s3Handler) Delete(ctx context.Context, repo string, hash model.Hash) error {
var (
err error
)
var err error
if _, err = s.client.DeleteObject(ctx, &s3.DeleteObjectInput{
Bucket: aws.String(s.bucket),
@ -128,7 +125,7 @@ func NewS3BlobHandler(
Value: aws.Credentials{AccessKeyID: accessKey, SecretAccessKey: secretKey},
}),
); err != nil {
logrus.Panicf("init s3 client err: %v", err)
log.Panic("init s3 client err: %v", err)
}
client = s3.NewFromConfig(cfg, func(options *s3.Options) {
@ -139,16 +136,16 @@ func NewS3BlobHandler(
Bucket: aws.String(bucket),
}); err != nil {
if !strings.Contains(err.Error(), "404") {
logrus.Panicf("init s3 bucket err: %v", err)
log.Panic("init s3 bucket err: %v", err)
}
logrus.Info("s3 bucket not found, start create...")
log.Info("s3 bucket not found, start create...")
if _, err = client.CreateBucket(ctx, &s3.CreateBucketInput{
Bucket: aws.String(bucket),
ACL: types.BucketCannedACLPublicRead,
}); err != nil {
logrus.Panicf("create s3 bucket err: %v", err)
log.Panic("create s3 bucket err: %v", err)
}
}