六十九、Git和容器CI/CD-GitHub Actions實(shí)戰(zhàn)

flask-redis源碼鏈接

修改docker-build.yml文件

name: Docker image buildx and push
on: [push]
jobs:
  Docker-Build-Push:
    runs-on: ubuntu-latest
    steps:
      -
        name: Checkout
        uses: actions/checkout@v2
      -
        name: Set up QEMU
        uses: docker/setup-qemu-action@v1
      -
        name: Set up Docker Buildx
        id: buildx
        uses: docker/setup-buildx-action@v1
      -
        name: Login to DockerHub
        uses: docker/login-action@v1 
        with:
          username: ${{ secrets.DOCKERHUB_USERNAME }}
          password: ${{ secrets.DOCKERHUB_PASSWORD }}
      -
        name: Build and push
        id: docker_build
        uses: docker/build-push-action@v2
        with:
          push: true
          platforms: linux/amd64,linux/arm64
          tags: insaneloafer/flask-redis:latest

github上添加secret環(huán)境變量

分別添加DOCKERHUB_USERNAMEDOCKERHUB_PASSWORD兩個(gè)變量,其中密碼可以用docker hub上的token替換,避免安全隱患

  1. 在docker hub上創(chuàng)建新的token


  2. 在github上創(chuàng)建secret環(huán)境變量
    進(jìn)入項(xiàng)目地址,點(diǎn)擊settings-secrets,添加以上兩個(gè)環(huán)境變量


提交代碼至github

PS D:\Docker_K8S\flask-redis> git add .
PS D:\Docker_K8S\flask-redis> git status
On branch master
Your branch is up to date with 'origin/master'.

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   .github/workflows/docker-build.yml

PS D:\Docker_K8S\flask-redis> git commit -m "update github actions"
[master 4add13b] update github actions
 1 file changed, 1 insertion(+), 1 deletion(-)
PS D:\Docker_K8S\flask-redis> git config --global http.sslVerify false
PS D:\Docker_K8S\flask-redis> git push origin master
Logon failed, use ctrl+c to cancel basic credential prompt.
Enumerating objects: 14, done.
Counting objects: 100% (14/14), done.
Delta compression using up to 8 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (10/10), 792 bytes | 792.00 KiB/s, done.
Total 10 (delta 4), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (4/4), completed with 2 local objects.
To https://github.com/InsaneLoafer/flask-redis.git
   b2bbd12..765b24a  master -> master

Note:
git config --global http.sslVerify false用于解決fatal: unable to access 'https://github.com/xxxx': OpenSSL SSL_read: Connection was reset, errno 10054問題

查看wrorkflow流水線

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容