# 部署中心 2.0 安裝配置文件 - 名稱:部署中心 2.0 - 建立者:賴念翔 - Image 網址:[網址](https://registry.digiwincloud.com.cn/harbor/projects/37/repositories/cloud%2Fdigiwindeploycenter-2.0.0) ## 1. 建立 PersistentVolume 要使用之資料夾 ```/bash= mkdir -p /data/deploycenter/home mkdir -p /data/deploycenter/deploy ``` ## 2. 匯入使用到的 SQL ```java= mysql -u <username> -p'<password>' -h <dbUrl> cloudservice < cloudservice2.0.sql mysql -u <username> -p'<password>' -h <dbUrl> deploycenter < deploycenter2.0.sql ``` ## 3. 配置 YAML ### 參數說明 #### Ingress ```yaml= kind: ingress-parameter spec: IngressHost: 對外暴露的網址 ``` #### Secret Secret 的值全部都要使用 base64 編碼過 ```yaml= kind: secret-parameter spec: CloudServiceDBUsername: CloudService DB 使用者名稱 CloudServiceDBPassword: CloudService DB 使用者密碼 DeployCenterDBUsername: DeployCenter DB 使用者名稱 DeployCenterDBPassword: DeployCenter DB 使用者密碼 MailUsername: 固定即可 MailPassword: 固定即可 GitUsername: 固定即可 GitPassword: 固定即可 ``` #### PersistentVolume ```yaml= kind: persistentvolume-parameter spec: ``` ### 部署 YAML(需自行取代參數) ```yaml= apiVersion: v1 kind: Namespace metadata: name: deploycenter --- apiVersion: extensions/v1beta1 kind: Ingress metadata: name: deploycenter namespace: deploycenter spec: rules: - host: <IngressHost> http: paths: - backend: serviceName: deploycenter servicePort: 8080 path: / --- apiVersion: v1 kind: Secret metadata: name: deploycenter-secret namespace: deploycenter type: Opaque data: CloudServiceDBUsername: <CloudServiceDBUsername> CloudServiceDBPassword: <CloudServiceDBPassword> DeployCenterDBUsername: <DeployCenterDBUsername> DeployCenterDBPassword: <DeployCenterDBPassword> MailUsername: <MailUsername> MailPassword: <MailPassword> GitUsername: <GitUsername> GitPassword: <GitPassword> --- apiVersion: v1 kind: PersistentVolume metadata: name: deploycenter-deploy namespace: deploycenter labels: area: deploycenter-deploy spec: capacity: storage: 5Gi volumeMode: Filesystem accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain nfs: path: <PersistentVolumePath> server: <PersistentVolumeServer> --- apiVersion: v1 kind: PersistentVolume metadata: name: deploycenter-home namespace: deploycenter labels: area: deploycenter-home spec: capacity: storage: 5Gi volumeMode: Filesystem accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain nfs: path: <PersistentVolumePath> server: <PersistentVolumeServer> --- kind: PersistentVolumeClaim apiVersion: v1 metadata: name: deploycenter-deploy namespace: deploycenter spec: accessModes: - ReadWriteMany resources: requests: storage: 5Gi selector: matchLabels: area: deploycenter-deploy --- kind: PersistentVolumeClaim apiVersion: v1 metadata: name: deploycenter-home namespace: deploycenter spec: accessModes: - ReadWriteMany resources: requests: storage: 5Gi selector: matchLabels: area: deploycenter-home --- kind: Service apiVersion: v1 metadata: labels: app: deploycenter name: deploycenter namespace: deploycenter spec: ports: - port: 8080 targetPort: 8080 name: web - port: 50000 targetPort: 50000 name: agent selector: app: deploycenter --- apiVersion: apps/v1beta1 kind: Deployment metadata: name: deploycenter namespace: deploycenter spec: replicas: 1 template: metadata: labels: app: deploycenter spec: imagePullSecrets: - name: regsecret containers: - name: deploycenter image: registry.digiwincloud.com.cn/cloud/digiwindeploycenter-2.0.0:1.0.0.20001 imagePullPolicy: IfNotPresent env: - name: JAVA_OPTS value: "-Duser.timezone=Asia/Taipei" - name: JsonPath value: "/ms/project" - name: JsonSavePath value: "/ms/project/output" - name: ConfigPath value: "/ms/KubernetesConfig" - name: DeployCenterDBHost value: "<DeployCenter DB位置>" - name: CloudServiceDBHost value: "<CloudService DB位置>" - name: ConfigUrl value: "gitlab.digiwincloud.com.cn/AliCloud-Test/KubernetesConfig" - name: GitBranch value: "master" - name: MailAuth value: "true" - name: MailHost value: "dwm6.digiwin.com" - name: MailStarttls value: "true" - name: MailPort value: "25" - name: MailFrom value: "cloudtest@digiwin.com" - name: MailUsername valueFrom: secretKeyRef: name: deploycenter-secret key: MailUsername - name: MailPassword valueFrom: secretKeyRef: name: deploycenter-secret key: MailPassword - name: CloudServiceDBUsername valueFrom: secretKeyRef: name: deploycenter-secret key: CloudServiceDBUsername - name: CloudServiceDBPassword valueFrom: secretKeyRef: name: deploycenter-secret key: CloudServiceDBPassword - name: DeployCenterDBUsername valueFrom: secretKeyRef: name: deploycenter-secret key: DeployCenterDBUsername - name: DeployCenterDBPassword valueFrom: secretKeyRef: name: deploycenter-secret key: DeployCenterDBPassword - name: GitUsername valueFrom: secretKeyRef: name: deploycenter-secret key: GitUsername - name: GitPassword valueFrom: secretKeyRef: name: deploycenter-secret key: GitPassword ports: - containerPort: 8080 name: web protocol: TCP - containerPort: 50000 name: agent protocol: TCP volumeMounts: - name: deploy mountPath: /ms/KubernetesConfig/ subPath: config - name: deploy mountPath: /ms/project subPath: json - name: home mountPath: /var/jenkins_home volumes: - name: deploy persistentVolumeClaim: claimName: deploycenter-deploy - name: home persistentVolumeClaim: claimName: deploycenter-home nodeSelector: run: "deploycenter" strategy: type: RollingUpdate rollingUpdate: { maxSurge: 100%, maxUnavailable: 0% } ``` ###### tags: `公司` `Kubernetes`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up