<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          華為云服務(wù)器部署初探

          共 2137字,需瀏覽 5分鐘

           ·

          2022-01-14 10:26

          最近玩了下華為云,遇到了一些坑,做下記錄。

          華為云有很多的服務(wù),文中會(huì)涉及到:

          • CCE
          • ECS
          • 彈性公網(wǎng)IP
          • DevCloud

          創(chuàng)建自己的鏡像

          因?yàn)橘徺I的服務(wù)器為鯤鵬服務(wù)器,而開源鏡像中心的鏡像都是 x86 的,所以直接通過鏡像中心的鏡像進(jìn)行安裝是無法正常運(yùn)行的。有兩種方式可以解決:

          1、編輯 YAML 文件,將鏡像修改為支持 arm 的鏡像,比如:arm64v8/nginx ;

          2、創(chuàng)建自己的鏡像,然后推送到鏡像倉庫中。

          第一種方式測(cè)試過,但沒有成功。制作自己的鏡像的步驟如下:

          1、ssh 進(jìn)入到 ECS 服務(wù)器;

          2、執(zhí)行下面命令進(jìn)行操作:

          docker?pull?arm64v8/nginx
          ##?登陸鏡像倉庫
          docker?login?-u?cn-north-4@89VUVGA2PF5XSHSM6YB4?-p?40d6f47154ef844717e9acc4cc3240e2dfeb900b149058e60a3f6fa598fb1?swr.cn-north-5.myhuaweicloud.com
          docker?tag?arm64v8/nginx?swr.cn-north-5.myhuaweicloud.com/xxx/s2-nginx:latest
          docker?push?swr.cn-north-5.myhuaweicloud.com/xxx/s2-nginx:latest

          推送成功后,在我的鏡像中可以看到自制的鏡像,如下圖:

          有了自己的鏡像后,在 CCE 中創(chuàng)建無狀態(tài)工作負(fù)載時(shí),就能在我的鏡像中進(jìn)行選擇了。

          配置文件

          運(yùn)行前端 vue 的程序,需要 nginx 配置文件、運(yùn)行 Redis ,需要 Redis 配置文件、運(yùn)行 API 程序,可能也會(huì)有自定義的配置文件,這些配置文件需要進(jìn)行外掛,方便修改。下面以 Redis 的配置文件為例。

          在配置中心中創(chuàng)建 redis.conf 的配置項(xiàng):

          創(chuàng)建無狀態(tài)工作負(fù)載,鏡像選擇 s2-redis ,在數(shù)據(jù)存儲(chǔ)配置中,選擇本地存儲(chǔ):

          • 存儲(chǔ)類型選擇配置項(xiàng),在下面的配置型可以選擇在配置中心添加的配置項(xiàng);
          • 掛載路徑設(shè)置為 /etc/redis

          在啟動(dòng)命令中配置相關(guān)命令可以讓 redis 以配置文件啟動(dòng),如果需要設(shè)置密碼,可以在參數(shù)中進(jìn)行添加,如下:

          DevCloud 中的流水線

          DevCloud 是一個(gè)開發(fā)平臺(tái),包含了代碼托管、項(xiàng)目任務(wù)管理、構(gòu)建、部署等。下面以一個(gè) vue 的示例來介紹怎樣從代碼提交到部署到 CCE 中。

          1、創(chuàng)建一個(gè)空白的 vue 項(xiàng)目 vue-demo ,并上傳到 DevCloud 中;

          2、項(xiàng)目的根目錄中添加 Dockerfile 文件,內(nèi)容如下:

          FROM?swr.cn-north-4.myhuaweicloud.com/xxx/s2-nginx:latest
          COPY?.?/usr/share/nginx/html/
          EXPOSE?80
          CMD?["nginx",?"-g",?"daemon?off;"]

          3、在編譯構(gòu)建中添加一個(gè)任務(wù),任務(wù)中添加兩個(gè)構(gòu)建步驟,如下圖:

          在命令的最下面添加 cp Dockerfile ./dist

          4、配置“制作鏡像并推送到 SWR 倉庫”:

          工作目錄:設(shè)置為 ./dist ,此目錄是執(zhí)行 docker build 的目錄,所以上面的命令中需要將 Dockerfile 復(fù)制到 dist 目錄中;

          5、手動(dòng)執(zhí)行配置好的任務(wù),順利的話會(huì)在我的鏡像中可以看到名為 vue-demo 的鏡像;

          6、在無工作負(fù)載中創(chuàng)建一個(gè)工作負(fù)載 nginx-test ,鏡像選擇 vue-demo ;

          7、在部署中創(chuàng)建一個(gè)任務(wù),添加一個(gè)部署步驟:Kubernates 部署,如下:

          8、在流水線中兩個(gè)步驟構(gòu)建和部署,分別選擇上面創(chuàng)建的構(gòu)建任務(wù)和部署任務(wù):

          9、設(shè)置流水線中的執(zhí)行計(jì)劃:

          代碼提交時(shí)觸發(fā),并且設(shè)置為包含 master ,當(dāng)有代碼推送到 master 分支時(shí)就會(huì)觸發(fā)流水線,進(jìn)行構(gòu)建和部署。

          流水線參數(shù)

          每次推送代碼進(jìn)行構(gòu)建,然后制作鏡像并推送到 SWR 倉庫,鏡像的版本期望能加 1 ,而且部署時(shí)使用最新的版本進(jìn)行部署,這就需要使用流水線的參數(shù)了:

          1、在流水線參數(shù)設(shè)置中進(jìn)行參數(shù)的添加

          • 參數(shù)名:tag
          • 類型:自增長
          • 默認(rèn)值:隨便定義,這里為 1.0.0
          • 運(yùn)行時(shí)設(shè)置:設(shè)置為開啟

          2、在構(gòu)建任務(wù)的參數(shù)設(shè)置中添加參數(shù)

          • 參數(shù)名:tag
          • 類型:字符串
          • 運(yùn)行時(shí)設(shè)置:設(shè)置為開啟

          3、在部署任務(wù)的參數(shù)設(shè)置中添加參數(shù)

          • 參數(shù)名:tag
          • 類型:字符串
          • 運(yùn)行時(shí)設(shè)置:設(shè)置為開啟

          4、構(gòu)建任務(wù)的”制作鏡像并推送到 SWR 倉庫“ 步驟中的鏡像標(biāo)簽設(shè)置修改為 ${tag}

          5、部署任務(wù)的 ”Kubernetes 部署“ 中的鏡像版本也修改為 ${tag} ;

          6、修改流水線的構(gòu)建任務(wù),tag 修改為 ${tag} ,如下圖:

          流水線的 tag 設(shè)置完后,當(dāng)再進(jìn)行代碼推送就會(huì)自動(dòng)構(gòu)建并生成新的鏡像版本,并部署到 CCE 的集群中。

          瀏覽 194
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  色天堂在线视频 | 青青草A片 | 大香伊人焦在线 | 三级成人导航 | 亚洲中文字幕在线播放 |