以下的.github工作流脚本不会更新Github Packages上已部署的软件包。
每次部署后,我希望脚本能够更新已部署的软件包。
这是我的部署脚本。请问有人可以告诉我如何修改它以便在每次部署后创建一个新的软件包吗?
Github包仅停留在最初推送的时间,并且不更新包。经检查,代码更改是原始的,并未更改为新的代码。 在 GitHub Actions 上,它显示已成功推送。
每次部署后,我希望脚本能够更新已部署的软件包。
这是我的部署脚本。请问有人可以告诉我如何修改它以便在每次部署后创建一个新的软件包吗?
name: Continuous Integration and Delivery
on: [ push ]
env:
WEB_IMAGE: ghcr.io/$(echo $GITHUB_REPOSITORY | tr '[:upper:]' '[:lower:]')/web
NGINX_IMAGE: ghcr.io/$(echo $GITHUB_REPOSITORY | tr '[:upper:]' '[:lower:]')/nginx
jobs:
build:
name: Build Docker Images
runs-on: ubuntu-latest
steps:
- name: Log in to GitHub Packages
run: echo ${PERSONAL_ACCESS_TOKEN} | docker login ghcr.io -u ${{ secrets.NAMESPACE }} --password-stdin
env:
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
- name: Build images
run: |
docker-compose down -v
docker-compose -f docker-compose.ci.yml build
- name: Push images
run: |
docker push ${{ env.WEB_IMAGE }}
docker push ${{ env.NGINX_IMAGE }}
Github包仅停留在最初推送的时间,并且不更新包。经检查,代码更改是原始的,并未更改为新的代码。 在 GitHub Actions 上,它显示已成功推送。
这里是docker.ci
version: "3.8"
services:
web:
build:
context: ./app
dockerfile: Dockerfile.prod
image: "${WEB_IMAGE}"
command: gunicorn hello_django.wsgi:application --bind 0.0.0.0:8000
volumes:
- static_volume:/usr/src/app/staticfiles
- media_volume:/usr/src/app/mediafiles
expose:
- 8000
env_file: .env
nginx:
build:
context: ./nginx
image: "${NGINX_IMAGE}"
volumes:
- static_volume:/usr/src/app/staticfiles
- media_volume:/usr/src/app/mediafiles
ports:
- 80:80
depends_on:
- web
volumes:
static_volume:
media_volume:
docker-compose -f docker-compose.ci.yml build
这行代码应该包含代码更改,以便进行部署。 - Joseph Adam