38 lines
1.4 KiB
YAML
38 lines
1.4 KiB
YAML
name: Build and Push Docker Image
|
||
|
||
on:
|
||
push:
|
||
branches: [ main ]
|
||
|
||
jobs:
|
||
build-and-push:
|
||
runs-on: ubuntu-latest
|
||
steps:
|
||
- name: Checkout code
|
||
uses: actions/checkout@v4
|
||
|
||
- name: Set up Docker Buildx
|
||
uses: docker/setup-buildx-action@v3
|
||
with:
|
||
# Используем сеть хоста, чтобы избежать проблем с внутренним DNS Docker
|
||
driver-opts: network=host
|
||
|
||
- name: Log in to Gitea Registry
|
||
run: |
|
||
# Добавляем домен в hosts раннера, указывая на локальный IP Synology
|
||
sudo echo "192.168.50.55 dungeonsiege.synology.me" | sudo tee -a /etc/hosts
|
||
|
||
# Логинимся. Теперь запрос пойдет на 192.168.50.55:443
|
||
echo "${{ secrets.GIT_TOKEN }}" | docker login dungeonsiege.synology.me -u ${{ secrets.GIT_USERNAME }} --password-stdin
|
||
|
||
- name: Build and push
|
||
uses: docker/build-push-action@v5
|
||
with:
|
||
context: .
|
||
push: true
|
||
# Указываем Buildx использовать сеть хоста и наш локальный DNS-хак
|
||
network: host
|
||
add-hosts: |
|
||
dungeonsiege.synology.me:192.168.50.55
|
||
tags: |
|
||
dungeonsiege.synology.me/poignatov/play-life:latest |