mirror of
https://github.com/danny-avila/LibreChat.git
synced 2026-03-10 10:02:36 +01:00
* chore(deploy-compose.yml): update API and client image references to use latest versions from ghcr.io feat(deploy-compose.yml): add NODE_ENV environment variable with value 'production' for API service * chore(dev-images.yml): tag and push latest images to container registry chore(dev-images.yml): tag and push latest client image to container registry chore(dev-images.yml): tag and push latest dev image to container registry fix(Dockerfile.multi): fix CMD command to properly set NODE_ENV variable
54 lines
2.3 KiB
YAML
54 lines
2.3 KiB
YAML
name: Docker Multi-Stage Build on Push to Main
|
|
|
|
# The workflow is triggered when a push is made to the main branch
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
# Check out the repository
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
# Set up Docker
|
|
- name: Set up Docker
|
|
uses: docker/setup-buildx-action@v1
|
|
|
|
# Log in to GitHub Container Registry
|
|
- name: Log in to GitHub Container Registry
|
|
uses: docker/login-action@v2
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
# Build Docker images
|
|
- name: Build Docker images
|
|
run: |
|
|
cp .env.example .env
|
|
docker build -f Dockerfile.multi --target api-build -t librechat-dev-api .
|
|
docker build -f Dockerfile.multi --target prod-stage -t librechat-dev-client .
|
|
docker build -f Dockerfile -t librechat-dev .
|
|
|
|
# Tag and push the images to GitHub Container Registry
|
|
- name: Tag and push images
|
|
run: |
|
|
docker tag librechat-dev-api:latest ghcr.io/${{ github.repository_owner }}/librechat-dev-api:${{ github.sha }}
|
|
docker push ghcr.io/${{ github.repository_owner }}/librechat-dev-api:${{ github.sha }}
|
|
docker tag librechat-dev-api:latest ghcr.io/${{ github.repository_owner }}/librechat-dev-api:latest
|
|
docker push ghcr.io/${{ github.repository_owner }}/librechat-dev-api:latest
|
|
|
|
docker tag librechat-dev-client:latest ghcr.io/${{ github.repository_owner }}/librechat-dev-client:${{ github.sha }}
|
|
docker push ghcr.io/${{ github.repository_owner }}/librechat-dev-client:${{ github.sha }}
|
|
docker tag librechat-dev-client:latest ghcr.io/${{ github.repository_owner }}/librechat-dev-client:latest
|
|
docker push ghcr.io/${{ github.repository_owner }}/librechat-dev-client:latest
|
|
|
|
docker tag librechat-dev:latest ghcr.io/${{ github.repository_owner }}/librechat-dev:${{ github.sha }}
|
|
docker push ghcr.io/${{ github.repository_owner }}/librechat-dev:${{ github.sha }}
|
|
docker tag librechat-dev:latest ghcr.io/${{ github.repository_owner }}/librechat-dev:latest
|
|
docker push ghcr.io/${{ github.repository_owner }}/librechat-dev:latest
|