Skip to content

Commit

Permalink
build(docker): refactor Dockerfile
Browse files Browse the repository at this point in the history
  • Loading branch information
leroyguillaume committed Sep 21, 2023
1 parent a9ed5a2 commit 8fd5f11
Show file tree
Hide file tree
Showing 5 changed files with 36 additions and 27 deletions.
13 changes: 13 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
/.github
/.gradle
/.vscode
/bin
/build
/conf
/gradle
/.dockerignore
/.gitignore
/docker-compose.yml
/Dockerfile
/LICENSE
/README.md
25 changes: 8 additions & 17 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,6 @@ on:
keycloak_version:
description: Keycloak version
required: true
keycloak_bcrypt_version:
description: Keycloak BCrypt version
required: true
default: 1.6.0

jobs:
docker:
Expand All @@ -18,18 +14,14 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Set up Java
uses: actions/setup-java@v3
with:
distribution: adopt
java-version: '17'

- name: Build
run: ./gradlew jar -Pdependency.keycloak.version=${{ github.event.inputs.keycloak_version }}
fetch-depth: 0

- name: Copy JAR into docker directory
run: cp build/libs/keycloak-bcrypt-${{ github.event.inputs.keycloak_bcrypt_version }}.jar docker
- id: version
name: Get latest version
run: |
tag=$(git describe --abbrev=0 --tags)
echo version=${tag:1:} >> $GITHUB_OUTPUTS
- name: Login to DockerHub
uses: docker/login-action@v1
Expand All @@ -40,9 +32,8 @@ jobs:
- name: Build and push Docker image
uses: docker/build-push-action@v2
with:
context: docker
build-args: |
keycloak_version=${{ github.event.inputs.keycloak_version }}
keycloak_bcrypt_version=${{ github.event.inputs.keycloak_bcrypt_version }}
context: .
push: true
tags: gleroy/keycloak-bcrypt:${{ github.event.inputs.keycloak_version }}_${{ github.event.inputs.keycloak_bcrypt_version }},gleroy/keycloak-bcrypt:latest
tags: gleroy/keycloak-bcrypt:${{ github.event.inputs.keycloak_version }}_${{ steps.version.outputs.version }},gleroy/keycloak-bcrypt:latest
14 changes: 14 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
ARG gradle_version=jdk17
ARG keycloak_version

FROM gradle:${gradle_version} as build

WORKDIR /app

COPY . .

RUN gradle assemble

FROM quay.io/keycloak/keycloak:${keycloak_version}

COPY --from=build /app/build/libs/*.jar /opt/keycloak/providers/
4 changes: 1 addition & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,10 @@ Add a password hash provider to handle BCrypt passwords inside Keycloak.
## Build Docker image

```bash
cp build/libs/keycloak-bcrypt-${KEYCLOAK_BCRYPT_VERSION}.jar docker
docker build \
--build-arg keycloak_version=${KEYCLOAK_VERSION} \
--build-arg keycloak_bcrypt_version=${KEYCLOAK_BCRYPT_VERSION} \
-t gleroy/keycloak-bcrypt \
docker
.
```

## Test with docker-compose
Expand Down
7 changes: 0 additions & 7 deletions docker/Dockerfile

This file was deleted.

0 comments on commit 8fd5f11

Please sign in to comment.