DevOps DevOps
产品简介
产品安装
快速入门
使用指南
开发指南
FAQ
  • Nexus
  • Namespace
  • PV 和 PVC
  • Deployment
  • 服务暴漏

# Nexus

# Namespace

$ kubectl create namespace devops

# PV 和 PVC

---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: nexus-pv
spec:
  capacity:          
    storage: 100Gi
  accessModes:       
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  nfs:            
    path: /backup/data/nexus   
    server: 10.16.16.41
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: nexus-data 
  namespace: devops
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 100Gi  

设置挂载目录权限

chown -R 200:200 /backup/data/nexus

# Deployment

nexus-deployment.yml

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nexus
  namespace: devops
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nexus
  template:
    metadata:
      labels:
        app: nexus
    spec:
      containers:
      - name: nexus
        image: hub.c.primeton.com/devops-pro/primeton/nexus3:3.61.0-02
        imagePullPolicy: IfNotPresent
        securityContext:
          runAsUser: 200
        ports:
        - containerPort: 8081
          name: http
          protocol: TCP
        resources:
          limits:
            cpu: 4
            memory: 8Gi
          requests:
            cpu: 2
            memory: 4Gi
        volumeMounts:
          - name: data
            mountPath: /nexus-data # Nexus数据存储目录
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: nexus-data

# 服务暴漏

nexus-svc.yml

---
apiVersion: v1
kind: Service
metadata:
  name: nexus
  namespace: devops
  labels:
    app: nexus
spec:
  selector:
    app: nexus
  type: NodePort
  ports:
  - name: http
    port: 8081
    targetPort: http
    nodePort: 30077

← GitLab PostgreSQL →