diff --git a/.github/README.md b/.github/README.md new file mode 100644 index 0000000..c8bdd81 --- /dev/null +++ b/.github/README.md @@ -0,0 +1,43 @@ +# Docker Daemon WoodpeckerCI Plugin + +[![pulls](https://img.shields.io/docker/pulls/kokuwaio/dockerd)](https://hub.docker.com/r/kokuwaio/dockerd) +[![size](https://img.shields.io/docker/image-size/kokuwaio/dockerd)](https://hub.docker.com/r/kokuwaio/dockerd) +[![dockerfile](https://img.shields.io/badge/source-Dockerfile%20-blue)](https://git.kokuwa.io/woodpecker/dockerd/src/branch/main/Dockerfile) +[![license](https://img.shields.io/badge/License-EUPL%201.2-blue)](https://git.kokuwa.io/woodpecker/dockerd/src/branch/main/LICENSE) +[![prs](https://img.shields.io/gitea/pull-requests/open/woodpecker/dockerd?gitea_url=https%3A%2F%2Fgit.kokuwa.io)](https://git.kokuwa.io/woodpecker/dockerd/pulls) +[![issues](https://img.shields.io/gitea/issues/open/woodpecker/dockerd?gitea_url=https%3A%2F%2Fgit.kokuwa.io)](https://git.kokuwa.io/woodpecker/dockerd/issues) + +A [Woodpecker I](https://woodpecker-ci.org) prepared docker daemon. +Also usable with Gitlab, Github or locally, see examples for usage. + +## Features + +- includes rootless +- configures mirror for dockerd + +## Example + +```yaml + +services: + - name: dockerd + image: kokuwaio/dockerd + ports: [2375, 8080] + +steps: + info: + image: kokuwaio/docker-cli + commands: docker info + environment: + DOCKER_HOST: tcp://dockerd:2375 +``` + +## Settings + +| Environment | Default | Description | +| ------------------------- | ------- | ---------------------------------------------------------------------------------- | +| DOCKERD_PORT | `2375` | Specifies the port to listen on | +| DOCKERD_SHUTDOWN_TIMEOUT | `0` | Set the default shutdown timeout | +| DOCKERD_LOG_LEVEL | `none` | Set the [logging level](https://docs.docker.com/reference/cli/dockerd/#log-format) | +| DOCKERD_REGISTRY_MIRROR | `none` | Specifies a list of registry mirrors. | +| DOCKERD_INSECURE_REGISTRY | `none | Configure [insecure registry](https://docs.docker.com/reference/cli/dockerd/#insecure-registries) | diff --git a/.woodpecker/test.yaml b/.woodpecker/test.yaml index afb0e0e..cecac08 100644 --- a/.woodpecker/test.yaml +++ b/.woodpecker/test.yaml @@ -1,9 +1,8 @@ when: instance: ci.kokuwa.io repo: woodpecker/dockerd - event: [manual, push, pull_request] - branch: main - path: [.woodpecker/build.yaml, Dockerfile, Dockerfile.dockerignore, entrypoint.sh] + event: pull_request + path: [.woodpecker/build.yaml, .woodpecker/test.yaml, Dockerfile, Dockerfile.dockerignore, entrypoint.sh] depends_on: [build] matrix: @@ -11,26 +10,21 @@ matrix: labels: platform: linux/${PLATFORM} +services: + - name: dockerd + image: registry.kokuwa.io/kokuwaio/dockerd:ci-${CI_PIPELINE_NUMBER} + ports: [2375] + steps: - pr: - image: registry.kokuwa.io/kokuwaio/dockerd:ci-${CI_PIPELINE_NUMBER} - commands: dockerd --version - when: - event: pull_request + info: + image: kokuwaio/docker-cli + commands: docker info + environment: + DOCKER_HOST: tcp://dockerd:2375 - kokuwa.io: &version - image: registry.kokuwa.io/kokuwaio/dockerd - pull: true - commands: dockerd --version - when: - event: [manual, push] - branch: main - - docker.io: - image: docker.io/kokuwaio/dockerd - <<: *version - - ghcr.io: - image: ghcr.io/kokuwaio/dockerd - <<: *version + pull: + image: kokuwaio/docker-cli + commands: docker pull bash + environment: + DOCKER_HOST: tcp://dockerd:2375 diff --git a/README.md b/README.md index 414a5d1..ab5244a 100644 --- a/README.md +++ b/README.md @@ -1,64 +1,13 @@ # Docker Daemon WoodpeckerCI Plugin -[![pulls](https://img.shields.io/docker/pulls/kokuwaio/dockerhub-metadata)](https://hub.docker.com/repository/docker/kokuwaio/dockerhub-metadata) -[![size](https://img.shields.io/docker/image-size/kokuwaio/dockerhub-metadata)](https://hub.docker.com/repository/docker/kokuwaio/dockerhub-metadata) -[![dockerfile](https://img.shields.io/badge/source-Dockerfile%20-blue)](https://github.com/kokuwaio/dockerhub-metadata/blob/main/Dockerfile) -[![license](https://img.shields.io/github/license/kokuwaio/dockerhub-metadata)](https://github.com/kokuwaio/dockerhub-metadata/blob/main/LICENSE) -[![issues](https://img.shields.io/github/issues/kokuwaio/dockerhub-metadata)](https://github.com/kokuwaio/dockerhub-metadata/issues) +[![pulls](https://img.shields.io/docker/pulls/kokuwaio/dockerd)](https://hub.docker.com/r/kokuwaio/dockerd) +[![size](https://img.shields.io/docker/image-size/kokuwaio/dockerd)](https://hub.docker.com/r/kokuwaio/dockerd) +[![dockerfile](https://img.shields.io/badge/source-Dockerfile%20-blue)](https://git.kokuwa.io/woodpecker/dockerd/src/branch/main/Dockerfile) +[![license](https://img.shields.io/badge/License-EUPL%201.2-blue)](https://git.kokuwa.io/woodpecker/dockerd/src/branch/main/LICENSE) +[![prs](https://img.shields.io/gitea/pull-requests/open/woodpecker/dockerd?gitea_url=https%3A%2F%2Fgit.kokuwa.io)](https://git.kokuwa.io/woodpecker/dockerd/pulls) +[![issues](https://img.shields.io/gitea/issues/open/woodpecker/dockerd?gitea_url=https%3A%2F%2Fgit.kokuwa.io)](https://git.kokuwa.io/woodpecker/dockerd/issues) -A [Woodpecker CI](https://woodpecker-ci.org) prepared docker daemon. +A [Woodpecker I](https://woodpecker-ci.org) prepared docker daemon. Also usable with Gitlab, Github or locally, see examples for usage. -## Features - -- set full description in repository from local file -- set short description in repository from settings -- set categories for repository - -## Example - -Woodpecker: - -```yaml -steps: - dockerhub: - image: kokuwaio/dockerhub-metadata - depends_on: [] - settings: - repository: kokuwaio/example-image - description-short: This image does that! - categories: [developer-tools, integration-and-delivery] - username: {from_secret: DOCKERHUB_USERNAME} - password: {from_secret: DOCKERHUB_PASSWORD} - when: - event: push - branch: main - path: README.md -``` - -Gitlab: - -```yaml -dockerhub: - stage: deploy - needs: [] - image: kokuwaio/hadolint - variables: - PLUGIN_REPOSITORY: kokuwaio/example-image - PLUGIN_DESCRIPTION_SHORT: This image does that! - PLUGIN_CATEGORIES: developer-tools,integration-and-delivery - rules: - - if: $CI_PIPELINE_SOURCE == "push" - changes: [README.md] -``` - -## Settings - -| Settings Name | Environment | Default | Description | -| ------------------- | ------------------------ | ----------- | ----------------------------------------------------------- | -| `repository` | PLUGIN_DOCKER_PORT | `none` | Repository to update with metadata, e.g. `kokuwaio/example` | -| `description-short` | PLUGIN_DESCRIPTION_SHORT | `none` | Short description for repository. | -| `description-file` | PLUGIN_DESCRIPTION_FILE | `README.md` | File to read full description from | -| `categories` | PLUGIN_CATEGORIES | `[]` | List of categories to set (maximum 3) | -| `username` | PLUGIN_USERNAME | `none` | Username for Dockerhub login | -| `password` | PLUGIN_PASSWORD | `none` | Password for Dockerhub login, **PAT** is not supported! | +For more documention see: [git.kokuwa.io/woodpecker/dockerd](https://git.kokuwa.io/woodpecker/dockerd) diff --git a/entrypoint.sh b/entrypoint.sh index b96d355..f279d72 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -8,9 +8,6 @@ set -e; ## COMMAND="dockerd --rootless --host=0.0.0.0:${DOCKERD_PORT:-2375} --tls=false --data-root=/woodpecker/docker --shutdown-timeout=${DOCKERD_SHUTDOWN_TIMEOUT:-0} --feature=buildkit=true --feature=containerd-snapshotter=true" -if [[ "${DOCKERD_ROOTLESS:-true}" == "true" ]]; then - COMMAND+=" " -fi if [[ -n "$DOCKERD_LOG_LEVEL" ]]; then COMMAND+=" --log-level=$DOCKERD_LOG_LEVEL" fi