Update workflow configuration
Some checks failed
Build and Push Docker Image / build-and-push (push) Failing after 5s
Some checks failed
Build and Push Docker Image / build-and-push (push) Failing after 5s
This commit is contained in:
@@ -2,33 +2,41 @@ name: Build and Push Docker Image
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [ main ]
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-and-push:
|
build-and-push:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
- name: Patch DNS for Local Network
|
||||||
uses: docker/setup-buildx-action@v3
|
run: |
|
||||||
# Убираем driver-opts: network=host, чтобы вернуть интернет в билд
|
# Мы говорим системе раннера: "Если ищешь домен, иди на локальный IP Synology"
|
||||||
|
# Это позволит пройти проверку SSL (имя совпадает), но пакеты пойдут по локалке.
|
||||||
|
sudo echo "192.168.50.55 dungeonsiege.synology.me" | sudo tee -a /etc/hosts
|
||||||
|
|
||||||
|
# Проверка связи (опционально, для отладки)
|
||||||
|
ping -c 2 dungeonsiege.synology.me
|
||||||
|
|
||||||
- name: Log in to Gitea Registry
|
- name: Log in to Gitea Registry
|
||||||
run: |
|
run: |
|
||||||
# Прописываем локальный IP в систему раннера
|
# Логинимся стандартной командой. Она увидит запись в hosts и пойдет на 192.168.50.55
|
||||||
sudo echo "192.168.50.55 dungeonsiege.synology.me" | sudo tee -a /etc/hosts
|
|
||||||
echo "${{ secrets.GIT_TOKEN }}" | docker login dungeonsiege.synology.me -u ${{ secrets.GIT_USERNAME }} --password-stdin
|
echo "${{ secrets.GIT_TOKEN }}" | docker login dungeonsiege.synology.me -u ${{ secrets.GIT_USERNAME }} --password-stdin
|
||||||
|
|
||||||
- name: Build and push
|
- name: Build Image
|
||||||
uses: docker/build-push-action@v5
|
run: |
|
||||||
with:
|
# Собираем обычным способом. Здесь интернет БУДЕТ работать.
|
||||||
context: .
|
docker build -t dungeonsiege.synology.me/poignatov/play-life:latest .
|
||||||
push: true
|
|
||||||
# Убираем network: host отсюда, чтобы apk add работал через bridge
|
- name: Push Image
|
||||||
# Но оставляем add-hosts, чтобы шаг PUSH знал, куда нести образ
|
run: |
|
||||||
add-hosts: |
|
# Отправляем образ. Благодаря шагу Patch DNS, он улетит на локальный IP.
|
||||||
dungeonsiege.synology.me:192.168.50.55
|
docker push dungeonsiege.synology.me/poignatov/play-life:latest
|
||||||
tags: |
|
|
||||||
dungeonsiege.synology.me/poignatov/play-life:latest
|
# Тэгируем версию коммита
|
||||||
|
docker tag dungeonsiege.synology.me/poignatov/play-life:latest dungeonsiege.synology.me/poignatov/play-life:${{ github.sha }}
|
||||||
|
docker push dungeonsiege.synology.me/poignatov/play-life:${{ github.sha }}
|
||||||
Reference in New Issue
Block a user