Add Couchbase 2.5 Docker build and publish workflow

Introduces a Dockerfile for Couchbase Server 2.5 on Ubuntu 12.04, a GitHub Actions workflow to build and publish the image to GHCR, and a .gitignore to exclude .deb and .rpm files. Also adds local settings for permissions.
This commit is contained in:
tiennm99 committed 2025-10-04 22:44:44 +07:00
1 parent 5d98438efc
commit 37559c5d40
4 files changed
+92

No files matched your search

@@ -0,0 +1,53 @@
name: Publish Couchbase 2.5 Docker Image
on:
push:
branches: [main]
paths:
- 'couchbase-2.5/**'
workflow_dispatch:
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Download Couchbase 2.5.2 RPM
run: |
cd couchbase-2.5
wget https://launchpadlibrarian.net/90920725/libgpg-error0_1.10-2ubuntu1_amd64.deb
wget https://launchpadlibrarian.net/462496703/libgcrypt11_1.5.0-3ubuntu0.9_amd64.deb
wget https://launchpadlibrarian.net/98077365/libp11-kit0_0.12-2ubuntu1_amd64.deb
wget https://launchpadlibrarian.net/329563761/libtasn1-3_2.10-1ubuntu1.6_amd64.deb
wget https://launchpadlibrarian.net/311120336/libgnutls26_2.12.14-5ubuntu3.14_amd64.deb
wget https://launchpadlibrarian.net/320724516/librtmp0_2.4~20110711.gitc28f1bab-1ubuntu0.1_amd64.deb
wget https://packages.couchbase.com/releases/2.5.2/couchbase-server-enterprise_2.5.2_x86_64.deb
- name: Log in to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract metadata
id: meta
uses: docker/metadata-action@v4
with:
images: ghcr.io/${{ github.repository }}/couchbase-2.5
tags: |
type=raw,value=2.5
- name: Build and push Docker image
uses: docker/build-push-action@v4
with:
context: couchbase-2.5
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}