Compare commits

..

32 Commits

Author SHA1 Message Date
e0dce1bca5 chore(deps): update dependency docker/compose to v2.35.1
Some checks failed
Markdown linter / markdown-link-checker (push) Failing after 24s
Markdown linter / markdown-lint (push) Failing after 11s
Build / build-amd64 (pull_request) Successful in 10m11s
Build / build-arm64 (pull_request) Failing after 23m59s
Build / build-amd64 (push) Successful in 9m32s
Build / build-arm64 (push) Successful in 10m10s
Release / push-arm64 (push) Successful in 10m34s
Release / push-amd64 (push) Successful in 10m34s
Release / push-manifest (push) Successful in 17s
Release / sync-to-hub-docker-io (push) Successful in 1m19s
2025-05-07 07:04:08 +00:00
183aa24e04 docs(README): adapt title
Some checks failed
Build / build-amd64 (push) Successful in 9m6s
Markdown linter / markdown-link-checker (push) Failing after 23s
Markdown linter / markdown-lint (push) Failing after 10s
Update Docker Hub Description / update-description-on-hub-docker-io (push) Successful in 10s
Build / build-arm64 (push) Successful in 10m18s
Release / push-amd64 (push) Successful in 10m3s
Release / push-arm64 (push) Successful in 10m53s
Release / push-manifest (push) Successful in 16s
Release / sync-to-hub-docker-io (push) Successful in 1m11s
2025-05-07 08:53:37 +02:00
f0d4b7fed6 chore(deps): update docker.io/library/golang docker tag to v1.24.3
All checks were successful
Build / build-amd64 (pull_request) Successful in 8m8s
Build / build-arm64 (pull_request) Successful in 10m26s
Build / build-arm64 (push) Successful in 10m21s
Build / build-amd64 (push) Successful in 11m46s
2025-05-06 22:04:07 +00:00
2efe2c8db2 revert(ci): use semver instead sed
Some checks failed
Build / build-arm64 (push) Has been cancelled
Build / build-amd64 (push) Has been cancelled
Release / push-amd64 (push) Successful in 9m12s
Release / push-arm64 (push) Successful in 10m54s
Release / push-manifest (push) Successful in 12s
Release / sync-to-hub-docker-io (push) Successful in 1m6s
This reverts commit 441f3a62f1.
2025-05-06 22:53:42 +02:00
441f3a62f1 fix(ci): use semver instead sed
Some checks failed
Build / build-arm64 (push) Has been cancelled
Build / build-amd64 (push) Has been cancelled
Release / push-amd64 (push) Failing after 48s
Release / push-arm64 (push) Successful in 10m46s
Release / push-manifest (push) Has been skipped
Release / sync-to-hub-docker-io (push) Has been skipped
2025-05-06 22:45:22 +02:00
b8e540a75b docs(README): add example
Some checks failed
Build / build-amd64 (push) Successful in 7m59s
Markdown linter / markdown-link-checker (push) Failing after 26s
Markdown linter / markdown-lint (push) Failing after 12s
Update Docker Hub Description / update-description-on-hub-docker-io (push) Successful in 13s
Build / build-arm64 (push) Successful in 10m31s
2025-05-06 22:18:42 +02:00
3afb5a8ebf fix(ci): sync to docker.io
Some checks failed
Build / build-amd64 (push) Has been cancelled
Build / build-arm64 (push) Has been cancelled
2025-05-06 22:10:01 +02:00
f9cf3d2bd4 fix(ci): latest
Some checks failed
Build / build-amd64 (push) Has been cancelled
Build / build-arm64 (push) Has been cancelled
2025-05-06 22:04:01 +02:00
0421906f84 fix(ci): trigger build on demand
All checks were successful
Build / build-amd64 (push) Successful in 8m24s
Build / build-arm64 (push) Successful in 10m29s
2025-05-06 18:50:32 +02:00
6b2f4de5cb feat(ci): replace drone with gitea actions
Some checks failed
Build / build-arm64 (push) Has been cancelled
Build / build-amd64 (push) Has been cancelled
Markdown linter / markdown-lint (push) Failing after 34s
Markdown linter / markdown-link-checker (push) Failing after 41s
2025-05-06 18:45:29 +02:00
e0845fe8c0 chore(ci): update docker.io/plugins/docker to 20.18.8
Some checks failed
continuous-integration/drone/push Build is failing
This reverts commit c2c098d067.
2025-04-11 17:33:22 +02:00
c2c098d067 chore(ci): rollback docker.io/plugins/docker to 20.17.4
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-11 17:30:17 +02:00
b635d57b9c chore(deps): update dependency docker/compose to v2.35.0
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-11 14:58:58 +02:00
51307adbbc chore(deps): update docker.io/plugins/docker docker tag to v20.18.8 2025-04-11 14:58:45 +02:00
9ebe60b86c chore(ci): use upstream container image registry
All checks were successful
continuous-integration/drone/push Build is passing
2025-04-02 21:31:21 +02:00
0fa77dcdc4 chore(ci): rollback plugins/docker to 20.18.6
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-02 10:43:27 +02:00
0cb2cf6f08 chore(ci): use container image mirror
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-02 09:54:06 +02:00
0e183593f8 chore(deps): update container images
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-04-01 19:12:18 +00:00
6840d711ef fix(Makefile): make FQIN configurable
All checks were successful
continuous-integration/drone/push Build is passing
2025-04-01 20:45:37 +02:00
300a24807b chore(renovate): use configuration preset
Some checks reported errors
continuous-integration/drone/push Build was killed
2025-03-30 20:42:29 +02:00
efba7d9140 chore(deps): update docker.io/plugins/docker docker tag to v20.18.8
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-03-26 20:11:43 +00:00
b6cf651a15 chore(deps): update docker.io/library/golang docker tag to v1.24.1-alpine3.21
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2025-03-22 14:50:03 +01:00
1d3f0dd08e chore(deps): update dependency docker/compose to v2.34.0
All checks were successful
continuous-integration/drone/push Build is passing
2025-03-22 14:47:32 +01:00
7335c15d79 chore(deps): update docker.io/library/golang docker tag to v1.24.1 2025-03-22 14:47:23 +01:00
56176dd60f chore(deps): update quay.io/skopeo/stable docker tag to v1.18.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-02-28 17:11:23 +00:00
476a48c711 chore(deps): update dependency docker/compose to v2.33.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2025-02-21 17:08:22 +00:00
0f23c958ed chore(deps): update docker.io/plugins/docker docker tag to v20.18.7
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build was killed
2025-02-18 08:10:17 +00:00
4b39e316bc chore(deps): update dependency docker/compose to v2.33.0
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2025-02-16 14:39:41 +01:00
7e02cf3679 chore(deps): update docker.io/library/golang docker tag to v1.24.0 2025-02-16 14:39:31 +01:00
c3c0abe10c chore(deps): update docker.io/library/golang docker tag to v1.23.6
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-02-04 21:27:48 +00:00
9357cae0f6 Merge pull request 'chore(deps): update docker.io/library/golang docker tag to v1.23.5' (#25) from renovate/docker.io-library-golang-1.x into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #25
2025-01-19 15:56:56 +00:00
d57afc78b2 chore(deps): update docker.io/library/golang docker tag to v1.23.5
All checks were successful
continuous-integration/drone/pr Build is passing
2025-01-17 02:11:16 +00:00
10 changed files with 249 additions and 725 deletions

View File

@ -1,670 +0,0 @@
---
kind: pipeline
type: kubernetes
name: linter
clone:
disable: true
platform:
os: linux
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: markdown lint
commands:
- markdownlint *.md
image: git.cryptic.systems/volker.raschek/markdownlint:0.43.0
resources:
limits:
cpu: 150
memory: 150M
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
resources:
limits:
cpu: 150
memory: 150M
when:
status:
- changed
- failure
trigger:
event:
exclude:
- tag
---
kind: pipeline
type: docker
name: dry-run-amd64
clone:
disable: true
depends_on:
- linter
platform:
os: linux
arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: build
image: docker.io/plugins/docker:20.18.6
settings:
auto_tag: false
dockerfile: Dockerfile
dry_run: true
force_tag: true
no_cache: true
purge: true
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/docker-compose
tags: latest-amd64
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
when:
status:
- changed
- failure
trigger:
branch:
exclude:
- master
event:
- pull_request
- push
repo:
- volker.raschek/docker-compose-docker
---
kind: pipeline
type: docker
name: dry-run-arm64-v8
clone:
disable: true
depends_on:
- linter
platform:
os: linux
arch: arm64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: build
image: docker.io/plugins/docker:20.18.6
settings:
auto_tag: false
dockerfile: Dockerfile
dry_run: true
force_tag: true
no_cache: true
purge: true
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/docker-compose
tags: latest-arm64-v8
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
when:
status:
- changed
- failure
trigger:
branch:
exclude:
- master
event:
- pull_request
- push
repo:
- volker.raschek/docker-compose-docker
---
kind: pipeline
type: docker
name: latest-amd64
clone:
disable: true
depends_on:
- linter
platform:
os: linux
arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: build
image: docker.io/plugins/docker:20.18.6
settings:
auto_tag: false
dockerfile: Dockerfile
force_tag: true
no_cache: true
purge: true
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/docker-compose
tags: latest-amd64
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
when:
status:
- changed
- failure
trigger:
branch:
- master
event:
- cron
- push
repo:
- volker.raschek/docker-compose-docker
---
kind: pipeline
type: docker
name: latest-arm64-v8
clone:
disable: true
depends_on:
- linter
platform:
os: linux
arch: arm64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: build
image: docker.io/plugins/docker:20.18.6
settings:
auto_tag: false
dockerfile: Dockerfile
force_tag: true
no_cache: true
purge: true
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/docker-compose
tags: latest-arm64-v8
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
when:
status:
- changed
- failure
trigger:
branch:
- master
event:
- cron
- push
repo:
- volker.raschek/docker-compose-docker
---
kind: pipeline
type: kubernetes
name: latest-manifest
clone:
disable: true
depends_on:
- latest-amd64
- latest-arm64-v8
# docker.io/plugins/manifest only for amd64 architectures available
node_selector:
kubernetes.io/os: linux
kubernetes.io/arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: build-manifest
image: docker.io/plugins/manifest:1.4.0
settings:
auto_tag: false
ignore_missing: true
spec: manifest.tmpl
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
resources:
limits:
cpu: 150
memory: 150M
when:
status:
- changed
- failure
trigger:
branch:
- master
event:
- cron
- push
repo:
- volker.raschek/docker-compose-docker
---
kind: pipeline
type: kubernetes
name: latest-sync
clone:
disable: true
depends_on:
- latest-manifest
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: latest-sync
commands:
- skopeo sync --all --src=docker --src-creds=$SRC_CRED_USERNAME:$SRC_CRED_PASSWORD --dest=docker --dest-creds=$DEST_CRED_USERNAME:$DEST_CRED_PASSWORD git.cryptic.systems/volker.raschek/docker-compose docker.io/volkerraschek
environment:
SRC_CRED_USERNAME:
from_secret: git_cryptic_systems_container_registry_user
SRC_CRED_PASSWORD:
from_secret: git_cryptic_systems_container_registry_password
DEST_CRED_USERNAME:
from_secret: container_image_registry_user
DEST_CRED_PASSWORD:
from_secret: container_image_registry_password
image: quay.io/skopeo/stable:v1.17.0
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
resources:
limits:
cpu: 150
memory: 150M
when:
status:
- changed
- failure
trigger:
branch:
- master
event:
- cron
- push
repo:
- volker.raschek/docker-compose-docker
---
kind: pipeline
type: docker
name: tagged-amd64
clone:
disable: true
platform:
os: linux
arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: build
image: docker.io/plugins/docker:20.18.6
settings:
auto_tag: true
auto_tag_suffix: amd64
dockerfile: Dockerfile
force_tag: true
no_cache: true
purge: true
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/docker-compose
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
build_args:
- DC_VERSION=${DRONE_TAG}
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
when:
status:
- changed
- failure
trigger:
event:
- tag
repo:
- volker.raschek/docker-compose-docker
---
kind: pipeline
type: docker
name: tagged-arm64-v8
clone:
disable: true
platform:
os: linux
arch: arm64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: build
image: docker.io/plugins/docker:20.18.6
settings:
auto_tag: true
auto_tag_suffix: arm64-v8
dockerfile: Dockerfile
force_tag: true
no_cache: true
purge: true
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/docker-compose
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
build_args:
- DC_VERSION=${DRONE_TAG}
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
when:
status:
- changed
- failure
trigger:
event:
- tag
repo:
- volker.raschek/docker-compose-docker
---
kind: pipeline
type: kubernetes
name: tagged-manifest
clone:
disable: true
depends_on:
- tagged-amd64
- tagged-arm64-v8
# docker.io/plugins/manifest only for amd64 architectures available
node_selector:
kubernetes.io/os: linux
kubernetes.io/arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: build-manifest
image: docker.io/plugins/manifest:1.4.0
settings:
auto_tag: true
ignore_missing: true
spec: manifest.tmpl
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
resources:
limits:
cpu: 150
memory: 150M
when:
status:
- changed
- failure
trigger:
event:
- tag
repo:
- volker.raschek/docker-compose-docker
---
kind: pipeline
type: kubernetes
name: tagged-sync
clone:
disable: true
depends_on:
- tagged-manifest
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: tagged-sync
commands:
- skopeo sync --all --src=docker --src-creds=$SRC_CRED_USERNAME:$SRC_CRED_PASSWORD --dest=docker --dest-creds=$DEST_CRED_USERNAME:$DEST_CRED_PASSWORD git.cryptic.systems/volker.raschek/docker-compose docker.io/volkerraschek
environment:
SRC_CRED_USERNAME:
from_secret: git_cryptic_systems_container_registry_user
SRC_CRED_PASSWORD:
from_secret: git_cryptic_systems_container_registry_password
DEST_CRED_USERNAME:
from_secret: container_image_registry_user
DEST_CRED_PASSWORD:
from_secret: container_image_registry_password
image: quay.io/skopeo/stable:v1.17.0
- name: email-notification
environment:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
SMTP_USERNAME:
from_secret: smtp_username
SMTP_PASSWORD:
from_secret: smtp_password
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
resources:
limits:
cpu: 150
memory: 150M
when:
status:
- changed
- failure
trigger:
event:
- tag
repo:
- volker.raschek/docker-compose-docker

View File

@ -0,0 +1,49 @@
name: Build
on:
pull_request:
types:
- "opened"
- "reopened"
- "synchronize"
push:
branches:
- master
workflow_dispatch: {}
jobs:
build-arm64:
runs-on: ubuntu-latest-arm64
steps:
- uses: actions/checkout@v4.2.2
- uses: docker/setup-qemu-action@v3.6.0
- uses: docker/setup-buildx-action@v3.10.0
- name: Build image
run: |
TAG=latest
docker buildx build \
--platform linux/arm64 \
--file Dockerfile \
--provenance false \
--tag git.cryptic.systems/volker.raschek/docker-compose:${TAG}-arm64 \
.
build-amd64:
runs-on: ubuntu-latest-amd64
steps:
- uses: actions/checkout@v4.2.2
- uses: docker/setup-qemu-action@v3.6.0
- uses: docker/setup-buildx-action@v3.10.0
- name: Build image
run: |
TAG=latest
docker buildx build \
--platform linux/amd64 \
--file Dockerfile \
--provenance false \
--tag git.cryptic.systems/volker.raschek/docker-compose:${TAG}-amd64 \
.

View File

@ -0,0 +1,46 @@
name: Markdown linter
on:
pull_request:
paths: [ "**/*.md" ]
types: [ "opened", "reopened", "synchronize" ]
push:
branches:
- '**'
paths: [ "**/*.md" ]
tags-ignore:
- '**'
workflow_dispatch: {}
jobs:
markdown-link-checker:
container:
image: docker.io/library/node:23.11.0-alpine
runs-on:
- ubuntu-latest
steps:
- name: Install tooling
run: |
apk update
apk add git npm
- uses: actions/checkout@v4.2.2
- name: Verify links in markdown files
run: |
npm install
npm run readme:link
markdown-lint:
container:
image: docker.io/library/node:23.11.0-alpine
runs-on:
- ubuntu-latest
steps:
- name: Install tooling
run: |
apk update
apk add git
- uses: actions/checkout@v4.2.2
- name: Lint markdown files
run: |
npm install
npm run readme:lint

View File

@ -0,0 +1,99 @@
name: Release
on:
push:
tags:
- "**"
jobs:
push-arm64:
runs-on: ubuntu-latest-arm64
steps:
- uses: actions/checkout@v4.2.2
- uses: docker/setup-qemu-action@v3.6.0
- uses: docker/setup-buildx-action@v3.10.0
- uses: docker/login-action@v3.4.0
with:
registry: git.cryptic.systems
username: ${{ github.repository_owner }}
password: ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }}
- name: Build and push image
run: |
TAG=$(echo ${{ github.ref_name }} | sed 's/v//gm')
docker buildx build \
--platform linux/arm64 \
--file Dockerfile \
--provenance false \
--tag git.cryptic.systems/volker.raschek/docker-compose:${TAG}-arm64 \
--push \
.
push-amd64:
runs-on: ubuntu-latest-amd64
steps:
- uses: actions/checkout@v4.2.2
- uses: docker/setup-qemu-action@v3.6.0
- uses: docker/setup-buildx-action@v3.10.0
- uses: docker/login-action@v3.4.0
with:
registry: git.cryptic.systems
username: ${{ github.repository_owner }}
password: ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }}
- name: Build and push image
run: |
TAG=$(echo ${{ github.ref_name }} | sed 's/v//gm')
docker buildx build \
--platform linux/amd64 \
--file Dockerfile \
--provenance false \
--tag git.cryptic.systems/volker.raschek/docker-compose:${TAG}-amd64 \
--push \
.
push-manifest:
runs-on: ubuntu-latest
needs:
- push-arm64
- push-amd64
steps:
- uses: docker/login-action@v3.4.0
with:
registry: git.cryptic.systems
username: ${{ github.repository_owner }}
password: ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }}
- name: Create and push manifest
run: |
TAG=$(echo ${{ github.ref_name }} | sed 's/v//gm')
docker manifest create git.cryptic.systems/volker.raschek/docker-compose:${TAG} \
--amend git.cryptic.systems/volker.raschek/docker-compose:${TAG}-amd64 \
--amend git.cryptic.systems/volker.raschek/docker-compose:${TAG}-arm64
docker manifest push git.cryptic.systems/volker.raschek/docker-compose:${TAG}
sync-to-hub-docker-io:
needs:
- push-manifest
runs-on: ubuntu-latest
steps:
- name: Copy images to docker.io
run: |
TAG=$(echo ${{ github.ref_name }} | sed 's/v//gm')
apt-get update --yes
apt-get install --yes skopeo
skopeo copy \
--all \
--dest-password ${{ secrets.DOCKER_IO_PASSWORD }} \
--dest-username ${{ secrets.DOCKER_IO_USERNAME }} \
--src-password ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }} \
--src-username volker.raschek \
docker://git.cryptic.systems/volker.raschek/docker-compose:${TAG} \
docker://docker.io/volkerraschek/docker-compose:${TAG}

View File

@ -0,0 +1,21 @@
name: Update Docker Hub Description
on:
push:
branches:
- master
paths:
- README.md
jobs:
update-description-on-hub-docker-io:
runs-on:
- ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- uses: peter-evans/dockerhub-description@v4.0.2
with:
username: ${{ secrets.DOCKER_IO_USERNAME }}
password: ${{ secrets.DOCKER_IO_PASSWORD }}
repository: volkerraschek/docker-compose
readme-filepath: README.md

View File

@ -1,4 +1,4 @@
FROM docker.io/library/golang:1.23.4-alpine3.20 AS build
FROM docker.io/library/golang:1.24.3-alpine3.21 AS build
ARG DC_VERSION=main

View File

@ -1,6 +1,6 @@
# DC_VERSION
# Only required to install a specifiy version
DC_VERSION?=v2.32.4 # renovate: datasource=github-releases depName=docker/compose
DC_VERSION?=v2.35.1 # renovate: datasource=github-releases depName=docker/compose
# CONTAINER_RUNTIME
# The CONTAINER_RUNTIME variable will be used to specified the path to a container runtime. This is needed to start and
@ -9,8 +9,8 @@ CONTAINER_RUNTIME?=$(shell which podman)
# DC_IMAGE_REGISTRY_NAME
# Defines the name of the new container to be built using several variables.
DC_IMAGE_REGISTRY_NAME:=git.cryptic.systems
DC_IMAGE_REGISTRY_USER:=volker.raschek
DC_IMAGE_REGISTRY_NAME?=git.cryptic.systems
DC_IMAGE_REGISTRY_USER?=volker.raschek
DC_IMAGE_NAMESPACE?=${DC_IMAGE_REGISTRY_USER}
DC_IMAGE_NAME:=docker-compose

View File

@ -1,6 +1,5 @@
# docker-compose-docker
# docker-compose
[![Build Status](https://drone.cryptic.systems/api/badges/volker.raschek/docker-compose-docker/status.svg)](https://drone.cryptic.systems/volker.raschek/docker-compose-docker)
[![Docker Pulls](https://img.shields.io/docker/pulls/volkerraschek/docker-compose)](https://hub.docker.com/r/volkerraschek/docker-compose)
This project contains all sources to build the container image `docker.io/volkerraschek/docker-compose`. The primary
@ -8,3 +7,15 @@ goal of this project is to package the binary `docker-compose` as container imag
found in the upstream project of [docker/compose](https://github.com/docker/compose).
The workflow or how `docker-compose` can in general be used is documented [here](https://docs.docker.com/compose/).
Nevertheless, here are some examples of how to use the container image.
```bash
IMAGE_VERSION=2.34.0
docker run \
--rm \
--volume ./path/to/docker-compose.yml:/workdir/docker-compose.yml:ro \
--volume /var/run/docker.sock:/var/run/docker.sock \
--workdir /workdir \
git.cryptic.systems/volker.raschek/docker-compose:${IMAGE_VERSION} \
ps
```

View File

@ -1,20 +0,0 @@
image: git.cryptic.systems/volker.raschek/docker-compose:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
{{#if build.tags}}
tags:
{{#each build.tags}}
- {{this}}
{{/each}}
- "latest"
{{/if}}
manifests:
-
image: git.cryptic.systems/volker.raschek/docker-compose:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-amd64
platform:
architecture: amd64
os: linux
-
image: git.cryptic.systems/volker.raschek/docker-compose:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-arm64-v8
platform:
architecture: arm64
os: linux
variant: v8

View File

@ -1,39 +1,27 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"assignees": [ "volker.raschek" ],
"labels": [ "renovate" ],
"customManagers": [
{
"fileMatch": ["^README\\.md$"],
"matchStrings": [
"VERSION=(?<currentValue>.*)"
],
"depNameTemplate": "volker.raschek/docker-compose",
"datasourceTemplate": "docker",
"registryUrlTemplate": "https://git.cryptic.systems"
}
],
"extends": [
"local>volker.raschek/renovate-config:default#master",
"local>volker.raschek/renovate-config:container#master",
"local>volker.raschek/renovate-config:actions#master",
"local>volker.raschek/renovate-config:regexp#master"
],
"packageRules": [
{
"addLabels": [ "renovate/droneci", "renovate/automerge" ],
"automerge": true,
"matchManagers": "droneci",
"matchUpdateTypes": [ "minor", "patch"]
},
{
"description": "Automatically update patch version of used container images in docker files",
"addLabels": [ "renovate/container-image", "renovate/automerge" ],
"automerge": true,
"matchManagers": [ "dockerfile" ],
"matchUpdateTypes": [ "patch" ]
},
{
"addLabels": [ "renovate/docker-compose", "renovate/automerge" ],
"automerge": false,
"matchPackageNames": [ "docker-compose" ],
"matchManagers": [ "regex" ]
}
],
"rebaseLabel": "renovate/rebase",
"rebaseWhen": "behind-base-branch",
"regexManagers": [
{
"description": "Update version",
"fileMatch": [
"^Makefile$"
],
"matchStrings": [
"DC_VERSION\\?=(?<currentValue>.*) # renovate: datasource=(?<datasource>.*) depName=(?<depName>.*)( lookupName=(?<lookupName>.*))?( versioning=(?<versioning>.*))?"
]
}
]
}