ci: push base image al registry + parametrizza BASE_IMAGE nei service Dockerfile
Buildx con driver docker-container non vede image caricate nel daemon
locale. Soluzione: push base come git.tielogic.xyz/adriano/cerbero-mcp/
base:latest e i 6 service Dockerfile usano ${BASE_IMAGE}:${BASE_TAG}
con default "cerbero-base" per dev locale, override CI a path registry.
This commit is contained in:
+23
-9
@@ -126,13 +126,15 @@ jobs:
|
|||||||
id: meta
|
id: meta
|
||||||
run: echo "sha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
|
run: echo "sha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: Build base image (load to local daemon)
|
- name: Build & push base image
|
||||||
uses: docker/build-push-action@v6
|
uses: docker/build-push-action@v6
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: docker/base.Dockerfile
|
file: docker/base.Dockerfile
|
||||||
tags: cerbero-base:latest
|
push: true
|
||||||
load: true
|
tags: |
|
||||||
|
${{ env.IMAGE_PREFIX }}/base:latest
|
||||||
|
${{ env.IMAGE_PREFIX }}/base:sha-${{ steps.meta.outputs.sha }}
|
||||||
cache-from: type=registry,ref=${{ env.IMAGE_PREFIX }}/buildcache:base
|
cache-from: type=registry,ref=${{ env.IMAGE_PREFIX }}/buildcache:base
|
||||||
cache-to: type=registry,ref=${{ env.IMAGE_PREFIX }}/buildcache:base,mode=max
|
cache-to: type=registry,ref=${{ env.IMAGE_PREFIX }}/buildcache:base,mode=max
|
||||||
|
|
||||||
@@ -153,7 +155,9 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: docker/mcp-deribit.Dockerfile
|
file: docker/mcp-deribit.Dockerfile
|
||||||
build-args: BASE_TAG=latest
|
build-args: |
|
||||||
|
BASE_IMAGE=git.tielogic.xyz/adriano/cerbero-mcp/base
|
||||||
|
BASE_TAG=latest
|
||||||
push: true
|
push: true
|
||||||
tags: |
|
tags: |
|
||||||
${{ env.IMAGE_PREFIX }}/mcp-deribit:latest
|
${{ env.IMAGE_PREFIX }}/mcp-deribit:latest
|
||||||
@@ -166,7 +170,9 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: docker/mcp-bybit.Dockerfile
|
file: docker/mcp-bybit.Dockerfile
|
||||||
build-args: BASE_TAG=latest
|
build-args: |
|
||||||
|
BASE_IMAGE=git.tielogic.xyz/adriano/cerbero-mcp/base
|
||||||
|
BASE_TAG=latest
|
||||||
push: true
|
push: true
|
||||||
tags: |
|
tags: |
|
||||||
${{ env.IMAGE_PREFIX }}/mcp-bybit:latest
|
${{ env.IMAGE_PREFIX }}/mcp-bybit:latest
|
||||||
@@ -179,7 +185,9 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: docker/mcp-hyperliquid.Dockerfile
|
file: docker/mcp-hyperliquid.Dockerfile
|
||||||
build-args: BASE_TAG=latest
|
build-args: |
|
||||||
|
BASE_IMAGE=git.tielogic.xyz/adriano/cerbero-mcp/base
|
||||||
|
BASE_TAG=latest
|
||||||
push: true
|
push: true
|
||||||
tags: |
|
tags: |
|
||||||
${{ env.IMAGE_PREFIX }}/mcp-hyperliquid:latest
|
${{ env.IMAGE_PREFIX }}/mcp-hyperliquid:latest
|
||||||
@@ -192,7 +200,9 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: docker/mcp-alpaca.Dockerfile
|
file: docker/mcp-alpaca.Dockerfile
|
||||||
build-args: BASE_TAG=latest
|
build-args: |
|
||||||
|
BASE_IMAGE=git.tielogic.xyz/adriano/cerbero-mcp/base
|
||||||
|
BASE_TAG=latest
|
||||||
push: true
|
push: true
|
||||||
tags: |
|
tags: |
|
||||||
${{ env.IMAGE_PREFIX }}/mcp-alpaca:latest
|
${{ env.IMAGE_PREFIX }}/mcp-alpaca:latest
|
||||||
@@ -205,7 +215,9 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: docker/mcp-macro.Dockerfile
|
file: docker/mcp-macro.Dockerfile
|
||||||
build-args: BASE_TAG=latest
|
build-args: |
|
||||||
|
BASE_IMAGE=git.tielogic.xyz/adriano/cerbero-mcp/base
|
||||||
|
BASE_TAG=latest
|
||||||
push: true
|
push: true
|
||||||
tags: |
|
tags: |
|
||||||
${{ env.IMAGE_PREFIX }}/mcp-macro:latest
|
${{ env.IMAGE_PREFIX }}/mcp-macro:latest
|
||||||
@@ -218,7 +230,9 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: docker/mcp-sentiment.Dockerfile
|
file: docker/mcp-sentiment.Dockerfile
|
||||||
build-args: BASE_TAG=latest
|
build-args: |
|
||||||
|
BASE_IMAGE=git.tielogic.xyz/adriano/cerbero-mcp/base
|
||||||
|
BASE_TAG=latest
|
||||||
push: true
|
push: true
|
||||||
tags: |
|
tags: |
|
||||||
${{ env.IMAGE_PREFIX }}/mcp-sentiment:latest
|
${{ env.IMAGE_PREFIX }}/mcp-sentiment:latest
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
|
ARG BASE_IMAGE=cerbero-base
|
||||||
ARG BASE_TAG=latest
|
ARG BASE_TAG=latest
|
||||||
|
|
||||||
FROM cerbero-base:${BASE_TAG} AS builder
|
FROM ${BASE_IMAGE}:${BASE_TAG} AS builder
|
||||||
COPY services/mcp-alpaca ./services/mcp-alpaca
|
COPY services/mcp-alpaca ./services/mcp-alpaca
|
||||||
RUN uv sync --frozen --no-dev --package mcp-alpaca
|
RUN uv sync --frozen --no-dev --package mcp-alpaca
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
|
ARG BASE_IMAGE=cerbero-base
|
||||||
ARG BASE_TAG=latest
|
ARG BASE_TAG=latest
|
||||||
|
|
||||||
FROM cerbero-base:${BASE_TAG} AS builder
|
FROM ${BASE_IMAGE}:${BASE_TAG} AS builder
|
||||||
COPY services/mcp-bybit ./services/mcp-bybit
|
COPY services/mcp-bybit ./services/mcp-bybit
|
||||||
RUN uv sync --frozen --no-dev --package mcp-bybit
|
RUN uv sync --frozen --no-dev --package mcp-bybit
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
# CER-P5-012 multi-stage slim: builder da cerbero-base (con uv + toolchain),
|
# CER-P5-012 multi-stage slim: builder da cerbero-base (con uv + toolchain),
|
||||||
# runtime da python:3.11-slim (solo venv + source).
|
# runtime da python:3.11-slim (solo venv + source).
|
||||||
|
ARG BASE_IMAGE=cerbero-base
|
||||||
ARG BASE_TAG=latest
|
ARG BASE_TAG=latest
|
||||||
|
|
||||||
FROM cerbero-base:${BASE_TAG} AS builder
|
FROM ${BASE_IMAGE}:${BASE_TAG} AS builder
|
||||||
COPY services/mcp-deribit ./services/mcp-deribit
|
COPY services/mcp-deribit ./services/mcp-deribit
|
||||||
RUN uv sync --frozen --no-dev --package mcp-deribit
|
RUN uv sync --frozen --no-dev --package mcp-deribit
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
|
ARG BASE_IMAGE=cerbero-base
|
||||||
ARG BASE_TAG=latest
|
ARG BASE_TAG=latest
|
||||||
|
|
||||||
FROM cerbero-base:${BASE_TAG} AS builder
|
FROM ${BASE_IMAGE}:${BASE_TAG} AS builder
|
||||||
COPY services/mcp-hyperliquid ./services/mcp-hyperliquid
|
COPY services/mcp-hyperliquid ./services/mcp-hyperliquid
|
||||||
RUN uv sync --frozen --no-dev --package mcp-hyperliquid
|
RUN uv sync --frozen --no-dev --package mcp-hyperliquid
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
|
ARG BASE_IMAGE=cerbero-base
|
||||||
ARG BASE_TAG=latest
|
ARG BASE_TAG=latest
|
||||||
|
|
||||||
FROM cerbero-base:${BASE_TAG} AS builder
|
FROM ${BASE_IMAGE}:${BASE_TAG} AS builder
|
||||||
COPY services/mcp-macro ./services/mcp-macro
|
COPY services/mcp-macro ./services/mcp-macro
|
||||||
RUN uv sync --frozen --no-dev --package mcp-macro
|
RUN uv sync --frozen --no-dev --package mcp-macro
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
|
ARG BASE_IMAGE=cerbero-base
|
||||||
ARG BASE_TAG=latest
|
ARG BASE_TAG=latest
|
||||||
|
|
||||||
FROM cerbero-base:${BASE_TAG} AS builder
|
FROM ${BASE_IMAGE}:${BASE_TAG} AS builder
|
||||||
COPY services/mcp-sentiment ./services/mcp-sentiment
|
COPY services/mcp-sentiment ./services/mcp-sentiment
|
||||||
RUN uv sync --frozen --no-dev --package mcp-sentiment
|
RUN uv sync --frozen --no-dev --package mcp-sentiment
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user