k8s一键部署uniswap

1、拉取uniswap源码
github地址
2、编写Dockerfile并打镜像

# Set the base image
FROM node:18.10.0

# WORKDIR /usr/src/app/
WORKDIR /home/gateway

# Copy files
COPY ./ /home/gateway/

# Dockerfile author / maintainer
LABEL maintainer="Michael Feng <mike@hummingbot.org>"

# Build arguments
LABEL branch=${BRANCH}
LABEL commit=${COMMIT}
LABEL date=${BUILD_DATE}

# Set ENV variables
ENV COMMIT_BRANCH=${BRANCH}
ENV COMMIT_SHA=${COMMIT}
ENV BUILD_DATE=${DATE}
ENV INSTALLATION_TYPE=docker

# Create mount points
RUN mkdir -p /home/gateway/conf /home/gateway/logs /home/gateway/db /home/gateway/certs /home/gateway/conf/lists

COPY src/templates/lists/*.json /home/gateway/conf/lists/
COPY src/templates/*.yml /home/gateway/conf/
#COPY certs/*.pem /home/gateway/certs/

# Install dependencies and compile
RUN yarn install --frozen-lockfile
RUN yarn build

# Expose port 15888 - note that docs port is 8080
EXPOSE 15888

# Set the default command to run when starting the container
CMD yarn run start

3、创建pem证书文件(因为创建证书需要第三方工具,这边就给出一份创建好了的证书)
k8s创建configmap yaml文件如下
uniswap-gateway-key.yml

---
apiVersion: v1
data:
  ca_cert.pem: >-
    LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM4VENDQWRtZ0F3SUJBZ0lVUk5jSm1FR3FGK095bGVaZ003TnNUcWhVUEprd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0tERVNNQkFHQTFVRUNnd0piRzlqWVd4b2IzTjBNUkl3RUFZRFZRUUREQWxzYjJOaGJHaHZjM1F3SGhjTgpNak13T1RBeE1USTBNekE1V2hjTk1qUXdPRE14TVRJME16QTVXakFvTVJJd0VBWURWUVFLREFsc2IyTmhiR2h2CmMzUXhFakFRQmdOVkJBTU1DV3h2WTJGc2FHOXpkRENDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0MKQVFvQ2dnRUJBS1g5T2poNkV0NkdwZmp6b2VjNEZKS2IwRDJ0bkVNOHg4ZjBlQjIzNGRzWlBTbHFVOXphaXFhegp4aEtQWGJPOHNVU3UvUTc5U1F5c0UwVVg3SFkxR2lOdExtMkY2WHBhZHUva2hVOU1iYlVxRXhyeXBrYU5iS2YxCkFKQkNWM3oxRkRtVHNTbkg3ODlVY1BrUG5HdDlXUUlpUXFPR25RR09WNnJRNHJvVWk5Wm5qNjczdlRMaVNNN04KclZRTUNVNkRLZTlmZDk2bUxxVEJ5UUpvWjY0OVZsaFd0TVdCUkhHaXJ3VkpLWm10dGs1cnBEY1dJL2VOTnozYwpabUpoRlpxWjZvcFZYS09JT1pnSnJibVN4SFdPR3YycWRydG9lTVFtSHJZMm5VdVMrUXhGOWNkUmJEYzc4ZW9DCm91RHJLYU1WcXpyS2JEYzR3MHVuYXl3SlpWejZKV1VDQXdFQUFhTVRNQkV3RHdZRFZSMFRBUUgvQkFVd0F3RUIKL3pBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQUJwcE1HaXhlVm5rQkxMSW5nQ2xHZXVKSDZmN1VDUTRVdG02QwpBaCtuUDZNM05taVdUcVFOVVB0ZmtJZDVHQ1VwSmppZncralJSb0M4Y3JZMXlVWlZUTVVmQXVReDMyWlE1a0dYCi9XSjYxSlE0S25pSmdRb2dUYm5CdXljNVR0eThqdm5PeGhLdTh1OXZ3ak5PQS9neGdxSVA3T2ZDcml4NStOeS8KT3AwYkNrOUZtK01EYWxLS3pQWTNCcHViMlpGMmlZVy9LOW9LQWIySFovanAxbEJCVjdqY3NzRmtidEc4eWU1ZAptKzRQellYYUlZeEFFZEdGZDBJYVl0dU1JRnlldHpDcS9ValRmbVNBZmkvRXBuT0JnNmJ4YWpxck5tT1JoVGsvCkRXOVUrbzU1QVA0ZVdMRjRmU05xazVBSXJ1Z3ZnZkxDZ1BPbnpZUVQ5U1c1bjNRSXlRPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
  ca_key.pem: >-
    LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpQcm9jLVR5cGU6IDQsRU5DUllQVEVECkRFSy1JbmZvOiBBRVMtMjU2LUNCQyw3MDU2MzhDOTc0RkM5NDgwMkI0NkJDMzBBRkQ0Rjc5MgoKR0FJb1MzTFZlZmR4TU9rcnlGNThXeWZ6SlRLRUdCZW1TdFVXYmwwenpzZi9rTDFRZEhVTjJ1MGV5ZElnanFIVQpmd1pHRzl1RDBCQzNpalE1OFNraUhsNjlrNHh2UE1LYVpxUjZKbUZwMk5pV1JpLy9VbWVUMUJZUGhQTHFWZkg1ClhpYjJwdXcwZEVVbGloVVNURTAzNWdHd0NFZWp1RWxudjBERDZob0Y2UngwdnJ3dm1ZclVDSDBjd2R4T2NDT2cKZEJGWHRNWmRsMEdMTGxrcTlsWW9sVHExN0VzREV2b2hvQk1SN2RvTHJJSXU0NmV5MWtINVVtUUZhNFJFWFRxNApHTmNUOGoxWGl3TE5hQXQvWGxMVUFnOTU3SFdsQUpCdFBZZUxLdUFWTGw3VmQ0TzFwbUZYZWc2Z2ZhVW03S1hLCnNzcEJBaVBjejVVaVNWU0hKTWRqajVzektaemljSk5sWit1Ull5V242UXlzcUFGK0ptQk9MYU5ydjVFWUJJVFoKTXdJQXF1VHRVT04xRkdYTmZxREJNSWgzc0UwZE1kS1B3YzJlL1docEt3TWNxWW5LUDJycUFQcWxRbll0RU43cwpYUHFmZ2krU3pBOE1xeEhqNWNXTDg3aTVtWlc3cmcyaFQrOXd0Z2U2NmNKdGlxMWZ3VDd6aUxMcmdVaGZMb3RZCnhhOGRzeHpBdGVySzlpd0FXUkViS0w4Z1JGU2hCSnl3bEdMeEhCOVJVSDNjQTQvYkE1ZnJ6YVdXdGwzNWVEczcKTFhpaW9PMnY1SS9IcG1UbStLeHR2Tk92VmVUaTYreTY3ZnA4L0txMFNhT2NzeGZXL0xPQVlTZzF1aGpHeHlKQQpwNktVbGlXR3lFVll3a2J5M1JhMmh1WCtLVWRqSnZnZ1hGVlRlWHFnb0oxZFM1ODBmK2FldzYwNWFkSWxJdkhxCmdPWFB4ZjMxN1VndEFxZHM3VUNFc0ZzdkU5ZHpBSUpvQng0eTV5Z0t6MUFIRzNWSXVxNURqeGkzbHpzY043R0oKU0V1eUVCY1RCdDQ0ZFhVN0ZndkR0U1hxeTk4aWV1SkJLMkVDamxLOS8rU1p6RzJQNnZ2TThWRVVRS2F2RkV0ZQpIUFB2TGpQOTBGRkJKcWtENWlTdnV4b2RpSi9ZVzBiWGdod093ZmpRSUxwLzhqZlk5c0VPUGMrNzNHeUJzSjNsCngwTWRvWEtXS1lhemFLVWg2bGUvdFJPUG45aGpWaGdQUEpuMXFzQU9DZjJocncxTlF6bG00YUJNc09lKzNBdDMKNHJHUkN6ajBhSUhic09URXdwWlFrRE1yQzRWZ3J4VHd1eUZNVGxPQ3FIeG1hanB5YVlraEwvQ2RlNXIwL2ZRMQozL2FyWTFvSXRlb3JjNHZPa2lqdkZLdm94V2I3YWNpN1RGREJEajZhN2FCVzgzUUVvZHkxMlZTc2dnWGNGM2RyCldvclJvLzB2M29VZHBzNU1DNXNCMTdBMFFVUFFTMHlHODdFWm4xRmZoVjBwR25iZ0lvZjBnZncyck9uZmgwajAKRHp4RmlhZzcwdnViOFp6N0wwWEttYXYrWHlZVHNEODBQWmlSc0RsTUNYUWlnY2didWVtd1ErVTJacmlMWWV2eApvdHRjQlZmbkdWODRuTGdmUG5uOFpHb09hcWk0SzNiTEpjWE1YMWUrYU9YR3F3bitjMFlyNlArYjUyaTBEdDlJClFjeUpaNm40Skh3NVRvNXFqUk40cGFQYlZRc1c3TVIvVGtOY2Jabm45SUtJWU1COFcwbE96ZCtsdUcrUWRheXAKWWxnMVJOOUN2V1VqWEV4QUh2RnV2d20rd1c5Vy9yWG03ZUlFWk1QR0VuU2tKdC9ReHV2TXJCY04zZDlhRnlHbQp3YVpBOHYyVDNyMWM2SzJyMkRBR0tSTENRN0hrS1Njb2Z1SzVxcHNiUzlEcUxCTGtNMVFCT1RNRTFndUt4U1VGCm5TYlUxcGJ5aUxodFhOK1BpbG1hdkNOYkxXSWVreDVvSTBubzIzRitVbWdGU2JzTTBBTUdPbDJESy9LTjlUcEUKOVpvZ0RPSUV4NmNZM1Z3VVdhbWRUSStWT3cyaFNaRE1paTJhVkE5ZFl6OCtUeWlwTEh4cmM2MmdRS2tSdDZjYwotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==
  client_cert.pem: >-
    LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM4ekNDQWR1Z0F3SUJBZ0lVWFkzdVRVNDlGN0dkY0M5djZEUjREVEl6QXBnd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0tERVNNQkFHQTFVRUNnd0piRzlqWVd4b2IzTjBNUkl3RUFZRFZRUUREQWxzYjJOaGJHaHZjM1F3SGhjTgpNak13T1RBeE1USTBNekE1V2hjTk1qUXdPRE14TVRJME16QTVXakFVTVJJd0VBWURWUVFEREFsc2IyTmhiR2h2CmMzUXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEWW5STFhtVUlGZEtoamV0U1EKclUrN3FDQ3lIekpnR1JFZTZQVWhMMjd0TndyRGhqLzJMczVqZDJDQUVDYU9DRllKZlgxSGc5RGEvbHA1U05Ccwo2UXhiK3dvcm1taG9qTXBrMDRrQW5BM2d5LzFiRGRIMTYyU0p2K09PZFBSaVEvSXRYbTdXOENHWU1XeWUreHh3CkNiZTZucWxrOXF0OEF2SUoyNzg4enBRbDhVSXQ3UUdsQ0xqRmpscWc4c0t2NVB6TmsvemJhRytZRHBDSnpkU1IKWXN5S2lhdG1wRFNXeWpZWEpMR0ZBMXkxUC9KQzBRNDU5VmwydXJyaGNTb1A0S09UeHZFQndINkJVT0J3elJucwpVcm5CeUlTbUlXR0o0T0RKV1dEQ2phclhPUE1xMC93S1RqT3IvR05rcG5hY3h2UjNhZTVLakRZUlA0cU9EbTR6CkwrNGhBZ01CQUFHaktUQW5NQThHQTFVZEV3RUIvd1FGTUFNQkFmOHdGQVlEVlIwUkJBMHdDNElKYkc5allXeG8KYjNOME1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQ2hrMitUMkhNeTQrUlZjK0dMN2NVdm02WlJHeDJ5bkRzTwpUdi8yVFpza2FnNy9BMncxMklFS1hGcURtanVyQUNFY0VUa1RsWTRpRDhwc3lVT2k5eXhSTFR0d3hHRHIrMVBICi8wZXh5L2JDdGVQOTBiK0lwY0FPZmZQUDNueWw0emtHdmxwY3dQWGNjcnRrcVVtVFJhbUdoOWtjVTA3WFVUS3YKT0ZKOThSNnRzbXhucGsycTFMellrSzF4ck90UTVZa2F4elRoY09QUUYzTW8xMko1anJtWHVwSDlRdW93TEpRawpEVEZFVW0xenExdndxNXR4QmZjTGE1Rk1aUS9IWWJQaUhYc2UrNDdQRW02R1U0eExvenlWNnEvS3BudDB5QUdHCnF0dWQ1SXp4ZExyQVRrekd5OWorTjVQUVA3U2ZiSlM5YXFaVlZnU2JYOHR4NlM1WmpVYzUKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
  client_csr.pem: >-
    LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM4ekNDQWR1Z0F3SUJBZ0lVWFkzdVRVNDlGN0dkY0M5djZEUjREVEl6QXBnd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0tERVNNQkFHQTFVRUNnd0piRzlqWVd4b2IzTjBNUkl3RUFZRFZRUUREQWxzYjJOaGJHaHZjM1F3SGhjTgpNak13T1RBeE1USTBNekE1V2hjTk1qUXdPRE14TVRJME16QTVXakFVTVJJd0VBWURWUVFEREFsc2IyTmhiR2h2CmMzUXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEWW5STFhtVUlGZEtoamV0U1EKclUrN3FDQ3lIekpnR1JFZTZQVWhMMjd0TndyRGhqLzJMczVqZDJDQUVDYU9DRllKZlgxSGc5RGEvbHA1U05Ccwo2UXhiK3dvcm1taG9qTXBrMDRrQW5BM2d5LzFiRGRIMTYyU0p2K09PZFBSaVEvSXRYbTdXOENHWU1XeWUreHh3CkNiZTZucWxrOXF0OEF2SUoyNzg4enBRbDhVSXQ3UUdsQ0xqRmpscWc4c0t2NVB6TmsvemJhRytZRHBDSnpkU1IKWXN5S2lhdG1wRFNXeWpZWEpMR0ZBMXkxUC9KQzBRNDU5VmwydXJyaGNTb1A0S09UeHZFQndINkJVT0J3elJucwpVcm5CeUlTbUlXR0o0T0RKV1dEQ2phclhPUE1xMC93S1RqT3IvR05rcG5hY3h2UjNhZTVLakRZUlA0cU9EbTR6CkwrNGhBZ01CQUFHaktUQW5NQThHQTFVZEV3RUIvd1FGTUFNQkFmOHdGQVlEVlIwUkJBMHdDNElKYkc5allXeG8KYjNOME1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQ2hrMitUMkhNeTQrUlZjK0dMN2NVdm02WlJHeDJ5bkRzTwpUdi8yVFpza2FnNy9BMncxMklFS1hGcURtanVyQUNFY0VUa1RsWTRpRDhwc3lVT2k5eXhSTFR0d3hHRHIrMVBICi8wZXh5L2JDdGVQOTBiK0lwY0FPZmZQUDNueWw0emtHdmxwY3dQWGNjcnRrcVVtVFJhbUdoOWtjVTA3WFVUS3YKT0ZKOThSNnRzbXhucGsycTFMellrSzF4ck90UTVZa2F4elRoY09QUUYzTW8xMko1anJtWHVwSDlRdW93TEpRawpEVEZFVW0xenExdndxNXR4QmZjTGE1Rk1aUS9IWWJQaUhYc2UrNDdQRW02R1U0eExvenlWNnEvS3BudDB5QUdHCnF0dWQ1SXp4ZExyQVRrekd5OWorTjVQUVA3U2ZiSlM5YXFaVlZnU2JYOHR4NlM1WmpVYzUKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
  client_key.pem: >-
    LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NBUUVBMkowUzE1bENCWFNvWTNyVWtLMVB1Nmdnc2g4eVlCa1JIdWoxSVM5dTdUY0t3NFkvCjlpN09ZM2RnZ0JBbWpnaFdDWDE5UjRQUTJ2NWFlVWpRYk9rTVcvc0tLNXBvYUl6S1pOT0pBSndONE12OVd3M1IKOWV0a2liL2pqblQwWWtQeUxWNXUxdkFobURGc252c2NjQW0zdXA2cFpQYXJmQUx5Q2R1L1BNNlVKZkZDTGUwQgpwUWk0eFk1YW9QTENyK1Q4elpQODIyaHZtQTZRaWMzVWtXTE1pb21yWnFRMGxzbzJGeVN4aFFOY3RUL3lRdEVPCk9mVlpkcnE2NFhFcUQrQ2prOGJ4QWNCK2dWRGdjTTBaN0ZLNXdjaUVwaUZoaWVEZ3lWbGd3bzJxMXpqekt0UDgKQ2s0enEveGpaS1oybk1iMGQybnVTb3cyRVQrS2pnNXVNeS91SVFJREFRQUJBb0lCQUZsVy8yeDR3MmdvbzBMVQphRk43aDhVb0pNUVNaZDZJdUN6OWZBekIyWWh4Q1RsM1oyNE1CQWUyTnREYTJHd0FPQ3dWMjlQaEpBVU9ueFlpCjJBUHpZcXVWTUs2bk1xVGNYS1dWTVk1VXpzeUdsZW8yR3dESW8yREZDZis1Y1FvT2FCWWFPckRmdlp0ZDF5VUQKQU1tYzJIQlovQmV1UFRBYXJ1VXVBd1A3VjlNRm1kQm5jbUVBRWpWOXgzYng1NEFZUGtsaHVmNUJVZDlMTGxXZQo3MGxZR2RNSVpoMnNPcFRGeGNycWlWRTlPV3IzVjUvVTJNN3RsdlFEbXJmUFdEb1k4cUZVZmg1NzA1WUpubnVBCllueGNtTGlQV2VaNzZUTjZkQ0loejFqUi84RGZReGhWTTMxemw1Rm41Rjc5VUJ6YXE4aHlZYjF3Z3RSeDF0OGIKVWNkbzh5RUNnWUVBKzROWEk4RG9peU5QdW56bFpicGtWZ0VvYUdtQW1TTEZidEpZNHBLNHIycTZhRkFtMFpOdwprdUZIazBHUnVobWdDVFo5dEJlWjhqWURHQWQ4T0k4VDE2a3BjT1pXYXZSRGY2NEVtNlA1eHBXdkFqUWp2Rk01Cmt0eEJnRUZWN2JBdmdlTGRZbWxkcmJpRDdBNWF0dUJpa3R0dldCaCtEdHBnVDU5L2ZXYjh3S1VDZ1lFQTNIcFkKN0ZidHF1dDBpMHhBdjVJVUw4Q0xKSnl1MXgyRWpsZEcxUUxSandlN2VjOTBUNm4xdTRaNk9HTHdiUmhlY1FWagpiWDYyekppRzJwQ3JnVldaN2p5UTkxRjVvSVNjbDhiS2FCTmJUckJMYXNuVGhZS3dqVDVSRmlSdGJ3djFrcDlxClVXV2ZSWTdiTVl2MkdpVGpJbkpFWnMzMnZRa3RnVEtLQWVCWTRzMENnWUIzU3JoTjhQVmE2UWlydndsZTBxVTgKVlpoQXphbDgrSTBFSHlpaGJrM0NoYkNjUVVmb0p6SkJ1REFtbS9idWViRDZMYW81Zk9nN2hYcTZMdkt3TU15TQpnV055ZFEyUDlRTCswQjdIWTJMWTJhNEVNWTZ4aUJmS25FVkUrN2d4NEZyb0ZCNUV5d3p2bEpDZHFjRkU4L0JOCkQxOGtQWm1zbWM4TWRPNFhJSDNKTVFLQmdDT1c4RkcrT29Fem5zMTVrcDRaNDM1TjAyZ21qcWFVMGpmejZMQXIKMDA0R1RvSDhOZWRDSlRPUElwMkZndy9wTmgyQ1pDbGhvZnBteUtYeFltM3ZObmpaZUFFa09zRHBoeW1NNGxGbwpobjJ1UVk1TVpBT1NOQk9vc29namV6TEl1R3hocFZUY1ZaaHgxZm9xZ0tCNXdkeG1tNW9JdDBLT2Y3VHlSb3JFCi96UWxBb0dCQUxqT2ZOVmg4dWFVN0xQM0pFcEUzcE5mOTFOY0I4b01Idkl2YlFieW05Uy84SzY0TEZZVnpSS3gKODljaGRYYUJlV0s5Q0poTmVjaWk2WXVQeEV1Qm90dkNxMnZIQlFsdExwTXZHRS9icysxM0N4TEdhRDVQem1MKwplYk1sZHNTaUhObmtsMVpUQ2lxMm9iM05XWXdOSG9JSUFyb1pLUTdiR2hkeDJyNm1WYllYCi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0t
  server_cert.pem: >-
    LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM4ekNDQWR1Z0F3SUJBZ0lVVXdidVFxODlpekp5RnhPRWM2WXhCOUhiWXg0d0RRWUpLb1pJaHZjTkFRRUwKQlFBd0tERVNNQkFHQTFVRUNnd0piRzlqWVd4b2IzTjBNUkl3RUFZRFZRUUREQWxzYjJOaGJHaHZjM1F3SGhjTgpNak13T1RBeE1USTBNekE1V2hjTk1qUXdPRE14TVRJME16QTVXakFVTVJJd0VBWURWUVFEREFsc2IyTmhiR2h2CmMzUXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDMFA3bERnWXV3d0F1V1p3STcKcmQ4WWdQdUJ2YVkwYUt1ekRGVGNQc2NJRnc0TlRxNjZzREFhaDBISHZMS0NGVGIzL3A3MGRXcUxCQzZFRHRSMwpIM1NXbi9GMEhvRi9NS2t5TEZpTXV0V3loWTRnQ1ZuMFU0eGV5ZjNoWmphbUxyUlU2UDNIelEySDkwTmxKbjlFCkZMb3BIQWpMUlM2WXY2b1c2TWtmYmJuZkVOQTAzWXFpN0pMbFNickxQK1ArSG5tejNJZCtTSXVhTjJxakZFOUIKRG1wN1lTNXNhU0czRjk4aXh5bENuT0JSN3JZWWtTMXMzUUpseXFBNW9UNUxjNk8vUGVKMytJSlR2K1RPbHBSMQpOc0dSZ3FpOG51Wlk1VitBdUl1YmVRSXN6M2xNVFpGS2FmMEUwS21zZFdSeFowOU8wM1V0RDZtcFpRQVZnbisxCmlOWnBBZ01CQUFHaktUQW5NQThHQTFVZEV3RUIvd1FGTUFNQkFmOHdGQVlEVlIwUkJBMHdDNElKYkc5allXeG8KYjNOME1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQTBGbk4xRERRd2x1NkM0N2YvYlpadEZHU3c2Zm5SRXdWYgpDVExHOENwM1Y1VFI2aUVzVUkvODZiZC9iUDhYZTRjc1VSbVFEanMrcWZoNk82Ri82ZDAzaUl2cXIrU2JvL01RCi8yd3JXdHJuZDlLanNGOXdJcmQ2YjliYXI5S3VHNTdGeGRjTWo3UFF6WUdmVVpoWnE3TUlCcSsvT0JSR1hxdEUKaTVqUDFJN1ZhS0htTlp3bTJ4VUw0eUU0ZUNxRFNpRDgwZmF3RlZIMXlXM2NWNFVVTG5PY3RrNUlwOENoVjNBawpMdE1veDl0TW5lcEF2Uk5DZ2NRWFo5cld5RzJxUmJJa0lTaGtCelNjZk02d2czOW9KY3JVcEl6d3NKQ2kyVW0xClpva0xZZWg4dnBBU1dpK1R1OFBqdXl4OUIvR3hlck51NlJIN1IvMHdMa2RSdDhGRm5xV3IKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
  server_csr.pem: >-
    LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0KTUlJQ2dEQ0NBV2dDQVFBd0ZERVNNQkFHQTFVRUF3d0piRzlqWVd4b2IzTjBNSUlCSWpBTkJna3Foa2lHOXcwQgpBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUF0RCs1UTRHTHNNQUxsbWNDTzYzZkdJRDdnYjJtTkdpcnN3eFUzRDdICkNCY09EVTZ1dXJBd0dvZEJ4N3l5Z2hVMjkvNmU5SFZxaXdRdWhBN1VkeDkwbHAveGRCNkJmekNwTWl4WWpMclYKc29XT0lBbFo5Rk9NWHNuOTRXWTJwaTYwVk9qOXg4ME5oL2REWlNaL1JCUzZLUndJeTBVdW1MK3FGdWpKSDIyNQozeERRTk4yS291eVM1VW02eXovai9oNTVzOXlIZmtpTG1qZHFveFJQUVE1cWUyRXViR2todHhmZklzY3BRcHpnClVlNjJHSkV0Yk4wQ1pjcWdPYUUrUzNPanZ6M2lkL2lDVTcva3pwYVVkVGJCa1lLb3ZKN21XT1ZmZ0xpTG0za0MKTE05NVRFMlJTbW45Qk5DcHJIVmtjV2RQVHROMUxRK3BxV1VBRllKL3RZaldhUUlEQVFBQm9DY3dKUVlKS29aSQpodmNOQVFrT01SZ3dGakFVQmdOVkhSRUVEVEFMZ2dsc2IyTmhiR2h2YzNRd0RRWUpLb1pJaHZjTkFRRUxCUUFECmdnRUJBRXlIeDlNNElHZGFJUmRkVnh2VnRETTZYdWN1cnFSTTBEakk5aEpidlMrd1NhYUNTOEd3cEsydjltTXgKK3JFNHhnQUk0UGRlMldKWGFTM1hBSUVyZ1I2WE5iWUR4aHBBdktNSXQ4bjEyVEtxTUc4MjdWNGpyeTBRd2Z3YQpJNEJxbytCQ2k2NDU5WEdsSVR2STVIZmFRRGhhUkJxbTJMdDJGR21oUHA5QWxncVdsT0ZYWGJ0YVZrWHFWVjFPCkFHNHU2UitMOHBLYmx5VHJ3TGFkNUVoQW00U3lYSCtsQXdzYTVBT2drNG80RytPeGxTa0c1WUUrM0JCU2c1YkgKVHNSR3llTWlkd2pMcWIxVXI3RWxJMWdzWGMrVFRVN2NtWmQ5anhqbFUyYzNxdnVSRlFWOENWVFlpY1NucDl1dgpQbFB3dVY5RjV6bjZPdUVxZTVLLzFEU3dBanc9Ci0tLS0tRU5EIENFUlRJRklDQVRFIFJFUVVFU1QtLS0tLQ==
  server_key.pem: >-
    LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpQcm9jLVR5cGU6IDQsRU5DUllQVEVECkRFSy1JbmZvOiBBRVMtMjU2LUNCQywyRUQ3QjhFMjM1RkEzQTVDMzExNUEwNjJBRTE3OUZEOAoKdkpxTmlkVWlXNkFUUVA2YjUzRHQ5WlAxSElXbitOenlkTXU1bmNNaGFxOGdiRS9MeThxSURFaUc3V3BBNUFKZQpDSXUvTDZsR3JJM09tcnhUUmI2U2dxc1pWRTJlaXRFZUwxd0VseGRESFZZOFBpT0t0WUhtRGFmRGM1eitPRjZsCnRvYjJEZm5NYkErOUx3a1ljQ0RQb0RJdnBHSUhTNmE5R2hRVW5mbkVLSkpSbHpXZisyM2FnR1dvVnJ6cENLeTcKbWV5R2ZFbVozWURzR0xWMGpScEVvbThLVkRyV2gwbTJpY0M0QnBTSGh1Z0poQWR0bWtFR2c1MU50Yjl5VVhWbQpYYURaeHU1L1FRaGQySUk3RVcrOTJBdlhuYVZZV0ExcTJ3WE1MMUF0Wjc3TGFUNFRLRUFiR3kyODNYbkM0MFlzCnAyTjFOOTVKS1M2TFBwL3EyS3RxZUpOTGtCUThPY2ZmcmNXYXgrT0QvYzlHK3FSa0U4U0ZtNUdTMTBSenhocEQKdGVEVVZXSENQVjN1Y1NuMHJBRkFoWlFJSkhSU25PL25vZnJORmZwT2dCcHkrMmNXelN2cUNTRVIyNjJRckNHMgpjYStvQWFqTkM3R1g3cjIrL2RTdjUyQmt3T253aGhsbXZkajIrK2t5N0RVTVhwbXdNQjU5ZTdFc0hXS2RaUmRvClgzNzNnT2c4TVpVK0JVNjBMalRPWTVENkhqN0tXMlZNVEpIUTJSQS9JY01lT2ZIdUhkNCtjZjVjQWVPWWF3Y0QKWm11SExmQVhRcHRpeXVueE01ZmNZNTJYY29kN0FpTGZoMHNIc2x3RDhBTUNaZGUwcUlGNDVIMnNwNEdmbGRRTwpaWFJKRWVnWDJIcEdHZE5WdExjVVQ3UmFUbUx4RlZxdXZxdXFMQlBrYUt0eXNVcFFyN216bVRCL2hOT3gxaFI1CjI5QURtRHJsSCt6aWUzQ0hINzZHYmNtUWdXS1dhWEE3Wm8yaEhySUdlMWlMSVZjTjlPcEJ4MmFyZmVXRmoxdGUKYjgySDN3bndpbEhTbEdJeEJKU0psZnlJUjRPSVVMVTZKVDFoVW9aTGQ3Z01xdktzdHJHbFIwcUg1UkUwd1J2ZgoxYlIxNTFnRzNzY2Znd3Z0N3hqOWxvY09QMGZMNGF2Q05iNllHQzRzQTBLYzRHcFBERThWQ3FXaVBnWmhZNFNEClo1V1dkNWtzTzZhSDhEVUJtWHhxdzJ0cTNLekVUSEZCMDdBWjN2OUxiNCt2dFkyaFlYcDVnUW5JVkxMeWRNRWIKUXZCSUJpTWhGOFRxUnBIS01qTmxuMjVQdy9nODhnS1RHQjZ1czAxbzB6MUR4dkpvTjN6NTdXWlRtaEJ6aGhVMwpFcjQ2MThyRWU3V2VRNVdLZ1pmZTREMTFqTW8xZFJvSmxhODcxWHdkYmI2eS9pMWpQbzVjbXdRbDN3Vm5aT0JjCi9qWWN0QnE0eHg5cFBDWGhLV210eTgvdDRsQ2RIT0gwTUNURlJVYkpJaFl5d3UzbHZFQjFKcHBnM3pVVWlESTMKQ3Z4eHR1YWJ6QXZtaHNaZ1VFUGFRcHNKeHhhMmxUN3NnaGZUVDNjR095TmtqV2JKTFZYWXBLV0MrdDBMRTJDRAozYVZXVXFYUzB1MElaeUNrYVpIMktuWHROcW1KZzhqUFYvRkE4S3I2K3grcS9MRUpWZDM4eXg5VytKNXRzQlhSCnFCckc5YWFZaTgyRUtqNTY2andIVHpBTE01cDh1QzRMbjdPUFRmQmNlUDc1alM4dk9WcDdhek1QY25BVlNPcTIKUzcvcDlZVUg0em5LekkvRnllZFk3TXU3WWxvUEtXZXRDUzVUcFpMVXFaTlkzRFhOS1k4YXpIcm9XRTBoWnpzdQpjN1BIanVRMk5qdUREdDdacS9FeFVBdnN5MXQvOWFLK0VKcFFFcVhFdGZtQ0Q1UU02TFU0TEZ4d3Y3cE5QMDg1CkY5c3NqVlpraldmaGZ3OCs1dXNaSXF4Q2k2clBVcHd2WnVTcU8rd29PNDN5UzM0L043TDdUNHVDdHVzRTNFaVMKTjErTS9lQlhQSUpzU1R1RlpFdGZleXlOaEduVk15WlIvdTNyTmVud2hJTEcrUkxOakNQQ2JiSVVzaG8xejBQVgotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQ==
immutable: false
kind: Secret
metadata:
  name: uniswap-gateway-key
  namespace: biking
  resourceVersion: '102621410'
type: Opaque

4、编写创建uniswap.yaml文件

---
apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    k8s.kuboard.cn/displayName: uniswap-node
  labels:
    k8s.kuboard.cn/layer: gateway
    k8s.kuboard.cn/name: uniswap-node
  name: gateway-node
  namespace: uniswap
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      k8s.kuboard.cn/name: uniswap-node
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      labels:
        k8s.kuboard.cn/name: uniswap-node
    spec:
      containers:
        - command:
            - yarn
            - start
            - '--passphrase=Welcome123'
          env:
            - name: TZ
              value: Asia/Shanghai
            - name: NACOS
              value: X.X.X.X
          image: 'registry-intl.cn-hongkong.aliyuncs.com/abc/uniswap-node:v1.0'
          imagePullPolicy: Always
          name: gateway-node
          ports:
            - containerPort: 15888
              name: msag7
              protocol: TCP
            - containerPort: 8080
              name: dfdg
              protocol: TCP
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          volumeMounts:
            - mountPath: /home/gateway/logs
              name: volume-miafx
              subPath: gateway-node
            - mountPath: /home/gateway/certs
              name: volume-xw5yj
          workingDir: /home/gateway
      dnsPolicy: ClusterFirst
      imagePullSecrets:
        - name: harbor-secret
        - name: acr-secret
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      terminationGracePeriodSeconds: 30
      volumes:
        - name: volume-miafx
          persistentVolumeClaim:
            claimName: uniswap-logs
        - name: volume-xw5yj
          secret:
            defaultMode: 420
            secretName: uniswap-gateway-key
---
apiVersion: v1
kind: Service
metadata:
  annotations: {}
  labels:
    k8s.kuboard.cn/layer: gateway
    k8s.kuboard.cn/name: uniswap-node
  name: uniswap-node
  namespace: biking
  resourceVersion: '90935018'
spec:
  ports:
    - name: kjmfca
      port: 15888
      protocol: TCP
      targetPort: 15888
    - name: zby2ps
      port: 8080
      protocol: TCP
      targetPort: 8080
  selector:
    k8s.kuboard.cn/name: uniswap-node
  sessionAffinity: None
  type: ClusterIP
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/cors-allow-headers: >-
      DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type
    nginx.ingress.kubernetes.io/cors-allow-methods: 'GET, POST, PUT, DELETE, OPTIONS'
    nginx.ingress.kubernetes.io/cors-allow-origin: '*'
    nginx.ingress.kubernetes.io/cors-expose-headers: 'Content-Length,Content-Type'
    nginx.ingress.kubernetes.io/enable-cors: 'true'
    nginx.ingress.kubernetes.io/force-ssl-redirect: 'true'
    nginx.ingress.kubernetes.io/from-to-www-redirect: 'false'
  labels:
    k8s.kuboard.cn/layer: gateway
    k8s.kuboard.cn/name: uniswap-node
  name: gateway-node
  namespace: biking
  resourceVersion: '90938206'
spec:
  ingressClassName: nginx
  rules:
    - host: uniswap-node.abc.com
      http:
        paths:
          - backend:
              service:
                name: uniswap-node
                port:
                  number: 15888
            path: /
            pathType: Prefix
  tls:
    - hosts:
        - uniswap-node.abc.com
      secretName: abc.com-ssl

5、启动好了uniswap时,我们在登录容器内部后通过curl进行测试
在这里插入图片描述

curl -s -X GET -k --key certs/server_key.pem --cert certs/server_cert.pem https://localhost:15888/ 
Enter PEM pass phrase: (Welcome123)
{"status":"ok"}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/237149.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

界面控件Kendo UI for jQuery中文教程 - 如何集成全新的DockManager组件

R3 2023版本在Kendo UI for jQuery套件中引入了许多改进&#xff0c;其中包括多个主题上的新组件、特性和改进。其中一个重要的新增功能是DockManager组件&#xff0c;本文将话一些时间与大家讨论一下它的功能&#xff01; P.S&#xff1a;Kendo UI for jQuery提供了在短时间内…

【数据结构】面试OJ题——链表

目录 1.移除链表元素 思路&#xff1a; 2.反转链表 思路&#xff1a; 3.链表的中间结点 思路&#xff1a; 4.链表中的倒数第K个结点 思路&#xff1a; 5.合并两个有序链表 思路&#xff1a; 6.链表分割 思路&#xff1a; 7.链表的回文结构 思路&#xff1a; 8.随机链表…

区块链扩容问题研究【06】

1.Plasma&#xff1a;Plasma 是一种基于以太坊区块链的 Layer2 扩容方案&#xff0c;它通过建立一个分层结构的区块链网络&#xff0c;将大量的交易放到子链上进行处理&#xff0c;从而提高了以太坊的吞吐量。Plasma 还可以通过智能合约实现跨链交易&#xff0c;使得不同的区块…

【基础篇】一,认识STM32

一&#xff0c;什么是STM32&#xff1f; STM32是一款由意法半导体公司开发的32位微控制器&#xff1b;其中ST指意法半导体&#xff1b;M指MCU或MPU&#xff0c;32指32 位。 STM32覆盖了Cortex-M的多种系列&#xff0c;包括M0、M0、M3、M7等。在分类上&#xff0c;STM32有很多…

数据在内存中的存储(整型篇)

1.辨析原码反码补码&#xff1a; 1.原码&#xff1a;有32位&#xff08;int类四个字节&#xff0c;一个字节八个比特位&#xff09;&#xff0c;第一位是符号位&#xff0c;0正1负&#xff0c;其余为二进制位。 2.计算一般是对原码进行计算&#xff0c;但在负数计算使用原码会导…

视频中自监督学习:「我的世界」下指令理解与跟随

本文介绍了北京大学人工智能研究院梁一韬助理教授所带领的 CraftJarvis 团队在「我的世界」环境下探索通用智能体设计的新进展&#xff0c;题为“GROOT: Learning to Follow Instructions by Watching Gameplay Videos”。 ​ GROOT 该研究的核心目标是探索能否摆脱文本数据的标…

【LLM】大模型之RLHF和替代方法(DPO、RAILF、ReST等)

note SFT使用交叉熵损失函数&#xff0c;目标是调整参数使模型输出与标准答案一致&#xff0c;不能从整体把控output质量&#xff0c;RLHF&#xff08;分为奖励模型训练、近端策略优化两个步骤&#xff09;则是将output作为一个整体考虑&#xff0c;优化目标是使模型生成高质量…

SpringBoot集成系列--RabbitMQ

文章目录 一、代码1、添加依赖2、配置RabbitMQ连接3、RabbitMQ配置4、创建生产者5、创建消费者6、测试 二、遇到的问题1、Channel shutdown2、收不到信息3、安装RabbitMQ&#xff0c;无法访问控制台访问 一、代码 1、添加依赖 在pom.xml文件中添加RabbitMQ的相关依赖 <de…

python期末简答题及答案,python期末题库和答案

本篇文章给大家谈谈python期末简答题及答案&#xff0c;以及python期末题库和答案&#xff0c;希望对各位有所帮助&#xff0c;不要忘了收藏本站喔。 期末复习判断题 &#xff08; √ &#xff09;Python变量名区分大小写,所以student和Student不是同一个变量。&#xff08; &…

MySQL慢SQL优化思路

MySQL慢SQL优化思路 具体思路&#xff1a; 1、慢查询日志记录慢 SQL 2、explain 分析 SQL 的执行计划 3、profile 分析执行耗时 4、Optimizer Trace 分析详情 5、确定问题并采用相应的措施 1、查看慢日志 1.1 使用命令查询慢日志配置 mysql> show variables like s…

机器人制作开源方案 | 网球收纳机器人

作者&#xff1a;孙宇晗、刘子昊、单正扬、李悦、张紫琦 单位&#xff1a;山东大学&#xff08;威海&#xff09; 指导老师&#xff1a;庞豹 1. 场景调研 1.1 宏观背景 体育作为社会经济、政治、文化的重要组成部分,越来越受政府、社会、学校等各阶层的关注。近年来&#x…

数据结构与算法-Rust 版读书笔记-2线性数据结构-栈

数据结构与算法-Rust 版读书笔记-2线性数据结构-栈 一、线性数据结构概念 数组、栈、队列、双端队列、链表这类数据结构都是保存数据的容器&#xff0c;数据项之间的顺序由添加或删除时的顺序决定&#xff0c;数据项一旦被添加&#xff0c;其相对于前后元素就会一直保持位置不…

[ABAP] Selection Screen 按钮管理

1. 隐藏执行按钮 initialization.data btab type table of sy-ucomm.append ONLI to btab.call function RS_SET_SELSCREEN_STATUSexportingp_status sy-pfkeytablesp_exclude btab.2.添加按钮(Tool Bar) tables: sscrfields.selection-screen begin of line.selection-scre…

Leetcode704二分查找、折半查找(Java实现)

好久没有更新算法题&#xff0c;今天来写一道二分查找的题目。题目要求如下&#xff0c; 那么这道题的解题思路如下&#xff0c;我们寻找的过程是首先去访问数组的中间位置mid&#xff0c;如果nums[mid]大于了targe那么说明&#xff0c;我们要找的数在mid的左半边&#xff0c;…

外包干了3个月,技术退步明显。。。

&#x1f4e2;专注于分享软件测试干货内容&#xff0c;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01;&#x1f4e2;交流讨论&#xff1a;欢迎加入我们一起学习&#xff01;&#x1f4e2;资源分享&#xff1a;耗时200小时精选的「软件测试」资…

awt中文乱码-Intellij IDEA

乱码的根本原因在于秦始皇嘎太早了&#xff08;bushi 解决方法&#xff1a;肉眼可见的编码设置统一为GBK 1.打开设置找到文件编码 2.肉眼可见的编码统统改成GBK 有人该问了&#xff0c;为什么不改成utf-8&#xff0c;因为awt的编码由操作系统决定&#xff0c;我的是win家庭中…

Faster R-CNN

Faster R-CNN是作者Ross Girshick继Fast R-CNN后的又一力作。同样使用VGG16作推理速度在GPU上达到5fps(包括候选区域的生成)&#xff0c;准确率为网络的backbone&#xff0c;也有进一步的提升。在2015年的ILSVRC以及COCO竞赛中获得多个项目的第一名。 算法流程 右边这部分和Fa…

人体关键点检测3:Android实现人体关键点检测(人体姿势估计)含源码 可实时检测

目录 1. 前言 2.人体关键点检测方法 (1)Top-Down(自上而下)方法 (2)Bottom-Up(自下而上)方法&#xff1a; 3.人体关键点检测模型训练 4.人体关键点检测模型Android部署 &#xff08;1&#xff09; 将Pytorch模型转换ONNX模型 &#xff08;2&#xff09; 将ONNX模型转换…

(纯原创)基于JavaWeb的宠物领养商城(详细源码以及开发设计报告)

摘要 本宠物领养系统以MVC分层为原则&#xff0c;数据持久化使用Mybatis&#xff0c;数据库使用MySQL&#xff0c;这些技术目前相对比较成熟&#xff0c;方便系统的维护与扩展 商城系统包括了宠物领养、用户注册、用户登录、商品查询、商品添加到购物车、删除商品等几大功能…

云贝教育 | 分享课:12月12日周二晚Oracle分享课享来了

Oracle 19c OCM分享课分享主题: Introduction to Clusterware 讲师&#xff1a;郭一军 直播分享平台&#xff1a;云贝教育视频号 时间&#xff1a;12月12日 周二晚 19: 30