diff --git a/.github/workflows/docker-build-push-dockerhub.yml b/.github/workflows/docker-build-push-dockerhub.yml new file mode 100644 index 0000000..684c5e4 --- /dev/null +++ b/.github/workflows/docker-build-push-dockerhub.yml @@ -0,0 +1,63 @@ +# This is a basic workflow to help you get started with Actions + +name: Build and push image to DockerHub + +# Controls when the workflow will run +on: + push: + branches: + - main + +# Leaving in example for releases. Initially we simply push to 'latest' +# on: + # release: + # types: [ created ] + + # # Allows you to run this workflow manually from the Actions tab + # workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: ubuntu-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + with: + submodules: true + + - name: Docker Login + # You may pin to the exact commit or the version. + # uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 + uses: docker/login-action@v1.10.0 + with: + # Username used to log against the Docker registry + username: ${{ secrets.DOCKER_HUB_USERNAME }} + # Password or personal access token used to log against the Docker registry + password: ${{ secrets.DOCKER_HUB_TOKEN }} + # Log out from the Docker registry at the end of a job + logout: true # optional, default is true + + - name: Set up Docker builder + id: buildx + uses: docker/setup-buildx-action@v1.6.0 + + - name: Build and push image + id: docker_build + uses: docker/build-push-action@v2 + with: + context: ./ + file: ./Dockerfile + push: true + # The test image is /docker and is private. final image will be /calendso and public + tags: docker.io/${{ secrets.DOCKER_HUB_USERNAME }}/calendso:latest + build-args: | + BASE_URL=http://localhost:3000 + NEXT_PUBLIC_APP_URL=http://localhost:3000 + + - name: Image digest + run: echo ${{ steps.docker_build.outputs.digest }} diff --git a/README.md b/README.md index 26f2397..f052e29 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,8 @@ # Docker +This image can be found on DockerHub at [https://hub.docker.com/repository/docker/calendso/calendso](https://hub.docker.com/repository/docker/calendso/calendso) + The Docker configuration for Calendso is an effort powered by people within the community. Calendso does not provide official support for Docker, but we will accept fixes and documentation. Use at your own risk. ## Important Notes diff --git a/docker-compose.yaml b/docker-compose.yaml index c023705..f50c221 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -25,7 +25,7 @@ services: args: - BASE_URL=${BASE_URL} - NEXT_PUBLIC_APP_URL=${NEXT_PUBLIC_APP_URL} - image: calendso/docker + image: calendso/calendso:latest restart: always networks: - stack @@ -39,7 +39,7 @@ services: # Optional use of Prisma Studio. In production, comment out or remove the section below to prevent unwanted access to your database. studio: - image: calendso/docker + image: calendso/calendso:latest restart: always networks: - stack