新聞中心
.github/workflows的文件夾,并在其中創(chuàng)建一個(gè)YAML文件(如docker_build.yml),然后編寫相應(yīng)的工作流程配置。如何使用 GitHub Actions 構(gòu)建 Docker 鏡像

創(chuàng)新互聯(lián)建站主營民豐網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app開發(fā)定制,民豐h5重慶小程序開發(fā)搭建,民豐網(wǎng)站營銷推廣歡迎民豐等地區(qū)企業(yè)咨詢
準(zhǔn)備工作
1、在 GitHub 上創(chuàng)建一個(gè)新的倉庫,用于存放 Dockerfile 和相關(guān)代碼。
2、在本地計(jì)算機(jī)上安裝 Docker 和 Docker Compose。
3、在倉庫中創(chuàng)建一個(gè)名為 Dockerfile 的文件,用于定義 Docker 鏡像的構(gòu)建過程。
4、在倉庫中創(chuàng)建一個(gè)名為 .github/workflows 的文件夾,用于存放 GitHub Actions 工作流配置文件。
創(chuàng)建 Dockerfile
在 Dockerfile 文件中,編寫以下內(nèi)容:
使用官方 Python 基礎(chǔ)鏡像 FROM python:3.8slim 設(shè)置工作目錄 WORKDIR /app 將依賴文件復(fù)制到工作目錄 COPY requirements.txt . 安裝依賴 RUN pip install nocachedir r requirements.txt 將源代碼復(fù)制到工作目錄 COPY . . 暴露端口 EXPOSE 8000 啟動(dòng)應(yīng)用 CMD ["python", "app.py"]
創(chuàng)建 GitHub Actions 工作流配置文件
在 .github/workflows 文件夾中,創(chuàng)建一個(gè)名為 docker_build_push.yml 的文件,用于配置 GitHub Actions 工作流,編寫以下內(nèi)容:
name: Build and Push Docker Image
on:
push:
branches:
main
jobs:
build_and_push:
runson: ubuntulatest
steps:
name: Checkout repository
uses: actions/checkout@v2
name: Set up Docker Buildx
uses: docker/setupbuildxaction@v1
name: Login to DockerHub
uses: docker/loginaction@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
name: Build and push Docker image
uses: docker/buildpushaction@v2
with:
context: .
push: true
tags: your_dockerhub_username/your_repository_name:latest
設(shè)置 DockerHub 憑據(jù)
在 GitHub 倉庫的 Settings > Secrets > New repository secret 中,添加兩個(gè)新的 secret:
1、DOCKERHUB_USERNAME:你的 DockerHub 用戶名。
2、DOCKERHUB_TOKEN:你的 DockerHub 訪問令牌。
觸發(fā) GitHub Actions 工作流
提交代碼到 main 分支,GitHub Actions 會(huì)自動(dòng)觸發(fā)工作流,構(gòu)建并推送 Docker 鏡像到 DockerHub。
相關(guān)問題與解答
Q1: 為什么需要使用 Docker Buildx?
A1: Docker Buildx 是一個(gè)用于構(gòu)建 Docker 鏡像的工具,它提供了更高效、更靈活的構(gòu)建方式,使用 Buildx 可以加速構(gòu)建過程,同時(shí)支持多平臺(tái)構(gòu)建。
Q2: 如何將構(gòu)建好的 Docker 鏡像部署到其他服務(wù)器?
A2: 你可以使用 Docker Machine、kubectl 或其他部署工具將構(gòu)建好的 Docker 鏡像部署到其他服務(wù)器,具體方法取決于你的需求和基礎(chǔ)設(shè)施。
分享名稱:如何使用GitHubActions構(gòu)建Docker鏡像
網(wǎng)站地址:http://m.fisionsoft.com.cn/article/ccddegj.html


咨詢
建站咨詢
