Compare commits

..

No commits in common. "176599e9dc9e5a98796528e735b780ecf008ef43" and "141bd031d4faa7cfbcd193b2ba9255262529a856" have entirely different histories.

10 changed files with 37 additions and 49 deletions

View File

@ -1,6 +0,0 @@
.git/
makefile
readme.md
zarf/docker
zarf/k8s
.dockerignore

1
.gitignore vendored
View File

@ -1,2 +1 @@
.idea
app/services/sales-api/sales-api

View File

@ -9,14 +9,14 @@ build:
# =========================================================
# Building containers
VERSION :=1.1
VERSION :=1.0
all: sales-api
all: service
sales-api:
service:
docker build \
-f zarf/docker/dockerfile.sales-api \
-t sales-api-amd64:$(VERSION) \
-f zarf/docker/Dockerfile \
-t service-amd64:$(VERSION) \
--build-arg BUILD_REF=$(VERSION) \
--build-arg BUILD_DATA=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
.
@ -31,7 +31,7 @@ kind-up:
--image kindest/node:v1.21.1 \
--name $(KIND_CLUSTER) \
--config zarf/k8s/kind/kind-config.yaml
kubectl config set-context --current --namespace sales-system
kubectl config set-context --current --namespace service-system
kind-down:
kind delete cluster --name $(KIND_CLUSTER)
@ -42,17 +42,16 @@ kind-status:
kubectl get pods -o wide
kind-load:
cd zarf/k8s/kind/sales-pod; kustomize edit set image sales-api-image=sales-api-amd64:$(VERSION)
kind load docker-image sales-api-amd64:$(VERSION) --name $(KIND_CLUSTER)
kind load docker-image service-amd64:$(VERSION) --name $(KIND_CLUSTER)
kind-apply:
kustomize build zarf/k8s/kind/sales-pod|kubectl apply -f -
kustomize build zarf/k8s/kind/service-pod|kubectl apply -f -
kind-logs:
kubectl logs -f -l app=sales --all-containers=true
kubectl logs -f -l app=service --all-containers=true
kind-restart:
kubectl rollout restart deployment sales-pod
kubectl rollout restart deployment service-pod
kind-update: all kind-load kind-restart
@ -61,7 +60,7 @@ kind-update-apply: all kind-load kind-apply
kind-describe:
kubectl describe node
kubectl describe svc
kubectl describe deployment sales-pod
kubectl describe deployment service-pod
# =========================================================
# Modules support

View File

@ -8,7 +8,7 @@ ARG BUILD_REF
COPY . /service
# Build the service binary
WORKDIR /service/app/services/sales-api
WORKDIR /service
RUN go build -ldflags "-X main.build=${BUILD_REF}"
@ -17,13 +17,13 @@ RUN go build -ldflags "-X main.build=${BUILD_REF}"
FROM alpine:3.14
ARG BUILD_DATE
ARG BUILD_REF
COPY --from=build_sales-api /service/app/services/sales-api/sales-api /service/sales-api
COPY --from=build_sales-api /service/service /service/service
WORKDIR /service
CMD ["./sales-api"]
CMD ["./service"]
LABEL org.opencontainers.image.created="${BUILD_DATE}" \
org.opencontainers.image.title="sales-api" \
org.opencontainers.image.author="Xiaoweihong" \
org.opencontainers.image.source="https://git.hongxiaowei.com/xiaowei/service/app/sales-api" \
org.opencontainers.image.title="service" \
org.opencontainers.image.author="xiaoweihong" \
org.opencontainers.image.source="git.hongxiaowei.com/xiaowei/service" \
org.opencontainers.image.revision="${BUILD_REF}" \
org.opencontainers.image.vendor="Xiao Wei"

View File

@ -1,26 +1,26 @@
apiVersion: v1
kind: Namespace
metadata:
name: sales-system
name: service-system
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: sales-pod
namespace: sales-system
name: service-pod
namespace: service-system
spec:
replicas: 1
selector:
matchLabels:
app: sales
app: service
strategy:
type: Recreate
template:
metadata:
labels:
app: sales
app: service
spec:
hostNetwork: true
containers:
- name: sales-api
image: sales-api-image
- name: service-api
image: service-amd64:1.0

View File

@ -1,4 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./base-sales.yaml
- ./base-service.yaml

View File

@ -1,10 +0,0 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ../../base/sales-pod/
patchesStrategicMerge:
- kind-sales-patch.yaml
images:
- name: sales-api-image
newName: sales-api-amd64
newTag: "1.1"

View File

@ -1,23 +1,23 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: sales-pod
namespace: sales-system
name: service-pod
namespace: service-system
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: sales
app: service
template:
metadata:
labels:
app: sales
app: service
spec:
containers:
# sales container configuration
- name: sales-api
# service container configuration
- name: service-api
resources:
limits:
cpu: "1000m" # Up to 2 full cores

View File

@ -0,0 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ../../base/service-pod/
patchesStrategicMerge:
- kind-servicepatch.yaml