107 Commits

Author SHA1 Message Date
324d532b69 chore(deps): update docker/setup-buildx-action action to v3.11.1
All checks were successful
Build / build-arm64 (pull_request) Successful in 3m34s
Lint Markdown files / markdown-lint (pull_request) Successful in 11s
Build / build-amd64 (pull_request) Successful in 3m13s
Build / build-arm64 (push) Successful in 3m58s
Lint Markdown files / markdown-lint (push) Successful in 13s
Build / build-amd64 (push) Successful in 1m2s
2025-06-18 10:17:21 +00:00
77e51902c9 chore(deps): update docker/setup-buildx-action action to v3.11.0
All checks were successful
Build / build-arm64 (pull_request) Successful in 3m28s
Lint Markdown files / markdown-lint (pull_request) Successful in 11s
Build / build-amd64 (pull_request) Successful in 3m52s
Build / build-arm64 (push) Successful in 3m27s
Lint Markdown files / markdown-lint (push) Successful in 10s
Build / build-amd64 (push) Successful in 4m29s
2025-06-16 13:14:35 +00:00
3f43447f65 chore(ci): adapt expression of extractVersion
All checks were successful
Build / build-arm64 (push) Successful in 3m40s
Lint Markdown files / markdown-lint (push) Successful in 10s
Build / build-amd64 (push) Successful in 5m21s
2025-06-10 12:30:25 +02:00
e7d5544adc chore(deps): update davidanson/markdownlint-cli2-action action to v20
All checks were successful
Lint Markdown files / markdown-lint (pull_request) Successful in 15s
Build / build-amd64 (pull_request) Successful in 1m3s
Build / build-arm64 (pull_request) Successful in 5m16s
Build / build-amd64 (push) Successful in 4m47s
Lint Markdown files / markdown-lint (push) Successful in 14s
Build / build-arm64 (push) Successful in 5m52s
2025-05-31 12:15:18 +00:00
5c4ad167f7 docs(README): adapt documentation to be compliant with markdownlint
All checks were successful
Lint Markdown files / markdown-lint (push) Successful in 4s
Update Docker Hub Description / update-description-on-hub-docker-io (push) Successful in 4s
Build / build-amd64 (push) Successful in 4m58s
Build / build-arm64 (push) Successful in 5m21s
2025-05-31 14:02:28 +02:00
fff4a90054 docs(README): adapt line length
All checks were successful
Lint Markdown files / markdown-lint (push) Successful in 11s
Update Docker Hub Description / update-description-on-hub-docker-io (push) Successful in 15s
Build / build-amd64 (push) Successful in 1m2s
Build / build-arm64 (push) Successful in 4m37s
2025-05-13 19:13:33 +02:00
4a9c482b17 fix(ci): replace drone with gitea actions 2025-05-13 19:11:03 +02:00
d9096a345f style(markdownlint): update configuration 2025-05-09 11:27:58 +02:00
0e6bbde729 docs(README): remove drone badge 2025-05-08 21:47:31 +02:00
d30949e682 chore(ci): use upstream container image registry
All checks were successful
continuous-integration/drone/push Build is passing
2025-04-02 21:32:31 +02:00
daaf6ec1b4 chore(ci): rollback plugins/docker to 20.18.6
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-02 10:44:09 +02:00
376cf2226c chore(ci): use container image mirror
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-02 09:54:53 +02:00
0dee97e24d fix(Makefile): make FQIN configurable
All checks were successful
continuous-integration/drone/push Build is passing
2025-04-01 20:46:21 +02:00
d53410775f chore(renovate): use configuration preset
All checks were successful
continuous-integration/drone/push Build is passing
2025-03-30 22:43:12 +02:00
6136c9f47d chore(deps): update docker.io/plugins/docker docker tag to v20.18.8
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2025-03-26 20:27:24 +00:00
0ec3a5e46a chore(renovate): remove obsolete matchBaseBranches
All checks were successful
continuous-integration/drone/push Build is passing
2025-03-22 16:00:12 +01:00
cd9bb25f94 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:28:34 +00:00
6bdcd653f6 chore(deps): update docker.io/plugins/docker docker tag to v20.18.7
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-02-18 08:26:39 +00:00
f8b3e69638 Merge pull request 'chore(deps): update dependency postfixadmin/postfixadmin to v3.3.15' (#54) from renovate/postfixadmin-postfixadmin-3.x into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #54
2024-12-30 13:55:28 +00:00
6b1fb13e52 chore(deps): update dependency postfixadmin/postfixadmin to v3.3.15
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-12-25 05:58:52 +00:00
9b45e3a58f chore(deps): update docker.io/plugins/docker docker tag to v20.18.6
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-12-25 05:25:33 +00:00
d6e684c9b3 Merge pull request 'chore(deps): update dependency postfixadmin/postfixadmin to v3.3.14' (#49) from renovate/postfixadmin-postfixadmin-3.x into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #49
2024-12-06 08:21:32 +00:00
3af8112dcf chore(deps): update dependency postfixadmin/postfixadmin to v3.3.14
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-12-03 17:35:10 +00:00
ac28483520 chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.43.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-12-03 14:35:48 +00:00
5b80c10ce8 chore(deps): update docker.io/plugins/docker docker tag to v20.18.5
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-11-29 11:26:59 +00:00
6a728b8918 chore(deps): update git.cryptic.systems/volker.raschek/git docker tag to v1.4.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-11-25 23:35:31 +00:00
b5ab383ce1 chore(deps): update quay.io/skopeo/stable docker tag to v1.17.0
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build encountered an error
2024-11-21 17:27:29 +00:00
ef2d230f40 chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.42.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-10-14 19:34:32 +00:00
4751017908 chore(deps): update quay.io/skopeo/stable docker tag to v1.16.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-09-03 16:20:54 +00:00
6782d222c4 chore(deps): update docker.io/plugins/docker docker tag to v20.18.4
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-08-22 16:21:19 +00:00
cb9a9a4128 chore(deps): update quay.io/skopeo/stable docker tag to v1.16.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-08-18 16:22:48 +00:00
e6a1fdc684 chore(deps): update docker.io/plugins/docker docker tag to v20.18.3
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-07-26 12:17:53 +00:00
08946a64d5 chore(deps): update quay.io/skopeo/stable docker tag to v1.15.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-07-16 16:17:32 +00:00
f76570d2d6 chore(deps): update docker.io/plugins/docker docker tag to v20.18.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-07-15 22:24:31 +00:00
82782c1385 chore(deps): update quay.io/skopeo/stable docker tag to v1.15.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-07-13 19:24:48 +00:00
53b94330d9 chore(deps): update docker.io/plugins/docker docker tag to v20.18.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-07-13 12:01:44 +00:00
dd60f75f1c chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.41.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-05-27 13:54:25 +00:00
830ceec04b chore(deps): update docker.io/plugins/docker docker tag to v20.17.5
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-05-20 13:19:39 +00:00
27268dd236 chore(deps): update docker.io/plugins/docker docker tag to v20.17.4
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-05-13 10:18:43 +00:00
e5ff085ba5 chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.40.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-05-07 23:07:41 +00:00
cde12981b3 chore(deps): update quay.io/skopeo/stable docker tag to v1.15.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-03-31 16:17:11 +00:00
5c76049d73 chore(deps): update docker.io/plugins/docker docker tag to v20.17.3
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-03-11 08:29:36 +00:00
954deda103 fix: move from docker.io to git.cryptic.systems
All checks were successful
continuous-integration/drone/push Build is passing
2024-03-02 14:45:27 +01:00
0db7449748 chore(deps): update quay.io/skopeo/stable docker tag to v1.14.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-02-18 17:17:02 +00:00
ce48d67606 chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.39.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-28 23:20:31 +00:00
c4a0a588fc fix(renovate): remove automerge options
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-21 14:37:06 +01:00
740d1952d8 Merge pull request 'chore(deps): update docker.io/plugins/docker docker tag to v20.17.2' (#31) from renovate/docker.io-plugins-docker-20.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2024-01-10 17:38:57 +00:00
07d3324d9d chore(deps): update docker.io/plugins/docker docker tag to v20.17.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2024-01-10 17:16:42 +00:00
4fc1bf1ec6 chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.38.0
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build was killed
2023-12-09 16:53:28 +01:00
78c6c95656 chore(deps): update quay.io/skopeo/stable docker tag to v1.14.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-06 17:23:01 +00:00
9c67388f8b chore(deps): update docker.io/plugins/docker docker tag to v20.17.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-11-15 14:16:57 +00:00
4dfb4713d2 Merge pull request 'chore(deps): update docker.io/plugins/docker docker tag to v20.17.0' (#24) from renovate/docker.io-plugins-docker-20.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-26 16:14:11 +00:00
78b9a76f1c chore(deps): update docker.io/plugins/docker docker tag to v20.17.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-10-26 14:36:01 +00:00
71a836b793 fix: adapt manifest
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-25 14:34:43 +02:00
757be24beb fix: unsupport arm-v7 image
Some checks failed
continuous-integration/drone/push Build is failing
2023-10-25 14:26:10 +02:00
1f4487eaf1 core(deps): update git.cryptic.systems/volker.raschek/drone-email to 0.1.5
Some checks failed
continuous-integration/drone/push Build is failing
2023-10-02 13:52:46 +02:00
c5f8356ea6 core(deps): update git.cryptic.systems/volker.raschek/git to 0.1.3 2023-10-02 13:51:05 +02:00
3e58957c14 chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.37.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2023-09-22 19:39:35 +02:00
54d4536a9a chore(deps): update quay.io/skopeo/stable docker tag to v1.13.3
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build encountered an error
2023-09-21 18:31:21 +02:00
67c006d66f revert(deps): update docker.io/plugins/docker docker tag to v20.14.4
Some checks failed
continuous-integration/drone/push Build is failing
This reverts commit 5ffaeaf154.
2023-09-03 16:22:00 +02:00
664522903b fix(renovate): exclude updating docker.io/plugins/docker 2023-09-03 16:21:48 +02:00
e178930855 chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.36.0
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build encountered an error
2023-09-03 14:00:52 +02:00
5ffaeaf154 chore(deps): update docker.io/plugins/docker docker tag to v20.14.4
Some checks reported errors
continuous-integration/drone/push Build encountered an error
2023-08-29 22:07:14 +00:00
48e7462fca chore(deps): update quay.io/skopeo/stable docker tag to v1.13.2
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2023-08-30 00:06:05 +02:00
986b7cf384 chore(deps): update dependency quay.io/skopeo/stable to v1.13.1
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2023-08-01 02:46:45 +02:00
d7476f906e chore(deps): update dependency quay.io/skopeo/stable to v1.13.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2023-07-19 21:33:06 +02:00
bd04e5fda8 fix(renovate): automerge patch versions of used container images in docker files
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-18 21:49:59 +02:00
f7d5017a81 feat(ci): use docker.io/plugins/manifest v1.4.0
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-18 14:54:49 +02:00
da7534f2e1 chore(deps): update dependency git.cryptic.systems/volker.raschek/markdownlint to v0.35.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2023-06-18 01:24:36 +02:00
eff75dc62a fix: migrate to git.cryptic.systems
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-17 16:03:38 +02:00
e652984bda feat(ci): use git.cryptic.systems/volker.raschek/drone-email v0.1.2
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-17 15:55:19 +02:00
9dc56df49d chore(deps): update dependency git.cryptic.systems/volker.raschek/markdownlint to v0.34.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-10 16:23:07 +02:00
836fbcbce5 style(markdown): disable MD044
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-09 16:26:47 +02:00
1889fd0e92 feat(ci): use git.cryptic.systems/volker.raschek/markdownlint v0.33.0
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-08 19:38:53 +02:00
4bdc3f00a1 feat(ci): use docker.io/plugins/drone v20.10.9
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-08 19:25:25 +02:00
a8f431e1e2 feat(ci): migrate to volker.raschek/git v1.2.1
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-08 18:58:45 +02:00
676e4e9dc5 Merge pull request 'chore(deps): update dependency postfixadmin/postfixadmin to v3.3.13' (#12) from renovate/postfixadmin-postfixadmin-3.x into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #12
2023-01-20 15:49:05 +00:00
663759caf5 chore(deps): update dependency postfixadmin/postfixadmin to v3.3.13
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-01-07 20:00:39 +01:00
0955ae62ed chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.33.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-01-07 19:44:19 +01:00
6e4d59cd9f chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.32.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-08-22 11:52:43 +02:00
6bb3bb38de fix(ci): remove docker socket volume
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-26 17:38:50 +02:00
c5e351df7f fix(ci): use docker.io/volkerraschek/drone-email:0.1.1
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-26 16:59:48 +02:00
2a3d60f01c chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.32.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-07-25 22:21:53 +02:00
f639dac5e2 fix: use podman instead of docker
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-23 10:19:05 +02:00
0edab8edaf chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.32.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-07-18 13:32:20 +02:00
06d2da8ec4 fix(ci): resource limits
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-22 13:10:21 +02:00
ceb3a08682 fix(ci): use fully qualified image name
Some checks reported errors
continuous-integration/drone/push Build was killed
2022-05-22 13:02:52 +02:00
b3e042a8dc fix(ci): use gitea to sync repo with github
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 17:47:41 +02:00
c170aaa085 Merge pull request 'chore(deps): update dependency postfixadmin/postfixadmin to v3.3.11' (#7) from renovate/postfixadmin-postfixadmin-3.x into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #7
2022-04-15 21:26:17 +00:00
a791674861 chore(deps): update dependency postfixadmin/postfixadmin to v3.3.11
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-04-15 11:48:56 +02:00
1c6d7bbbb3 fix(ci): matchPackageNames is an array
All checks were successful
continuous-integration/drone/push Build is passing
2022-04-15 11:48:31 +02:00
278bb991bf fix(ci): package rule to trim leading info from git version
Some checks reported errors
continuous-integration/drone/push Build was killed
2022-04-15 10:59:39 +02:00
d885a22ae4 fix(ci): extract version
All checks were successful
continuous-integration/drone/push Build is passing
2022-04-15 10:55:39 +02:00
56570f9fb8 fix(ci): renovate versionTemplate regexp
All checks were successful
continuous-integration/drone/push Build is passing
2022-04-15 10:34:07 +02:00
e29136e73a fix(ci): renovate search condition
All checks were successful
continuous-integration/drone/push Build is passing
2022-04-14 22:04:30 +02:00
6edd838968 chore(deps): update docker.io/volkerraschek/markdownlint docker tag to v0.31.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-02-09 19:32:47 +00:00
9a58c7c040 fix(ci): add package rules
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-30 18:20:51 +01:00
3fc6dcd3fa fix(ci): add aarch64 build
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-30 01:05:50 +01:00
4eb277bee4 Merge pull request 'chore(deps): update docker.io/volkerraschek/markdownlint docker tag to v0.30.0' (#2) from renovate/docker.io-volkerraschek-markdownlint-0.x into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #2
2021-11-20 12:38:06 +00:00
ba879cd3f6 chore(deps): update docker.io/volkerraschek/markdownlint docker tag to v0.30.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2021-11-20 12:05:19 +00:00
cf51ae8673 fix(ci): renovate init
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-31 15:22:31 +01:00
b3d34f7ce7 fix(ci): dependencies and conditions
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-12 21:56:58 +02:00
44b0814504 fix(Dockerfile): checkout master
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-10 21:15:08 +02:00
6609d2528e fix: support tagged and arm versions
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-10 20:42:54 +02:00
8b7d475852 doc(README): bcrypt plaintext password
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-03 16:59:59 +02:00
89c2365406 fix: bcrypt plaintext password
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-03 16:32:54 +02:00
8161245db9 doc(README): add description of additional env vars
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-03 15:44:51 +02:00
12 changed files with 373 additions and 398 deletions

View File

@ -1,228 +0,0 @@
---
kind: pipeline
type: kubernetes
name: linter
platform:
os: linux
arch: amd64
steps:
- name: markdown lint
commands:
- markdownlint *.md
image: docker.io/tmknom/markdownlint:0.23.1
resources:
limits:
cpu: 50
memory: 50M
- name: email-notification
environment:
PLUGIN_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: docker.io/drillster/drone-email:latest
resources:
limits:
cpu: 50
memory: 25M
when:
status:
- changed
- failure
trigger:
event:
exclude:
- tag
---
kind: pipeline
type: docker
name: build-latest
platform:
os: linux
arch: amd64
steps:
- name: build
image: docker.io/volkerraschek/build-image:latest
commands:
- make container-image/build
volumes:
- name: docker_socket
path: /var/run/docker.sock
when:
branch:
- master
- name: push
image: docker.io/volkerraschek/build-image:latest
commands:
- make container-image/push
environment:
POSTFIXADMIN_IMAGE_REGISTRY_PASSWORD:
from_secret: container_image_registry_password
volumes:
- name: docker_socket
path: /var/run/docker.sock
when:
branch:
- master
repo:
- volker.raschek/postfixadmin-docker
- name: delete
image: docker.io/volkerraschek/build-image:latest
commands:
- make container-image/delete
volumes:
- name: docker_socket
path: /var/run/docker.sock
when:
branch:
- master
- name: notify
image: drillster/drone-email
environment:
PLUGIN_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
when:
status:
- changed
- failure
volumes:
- name: docker_socket
host:
path: /var/run/docker.sock
trigger:
event:
exclude:
- tag
---
kind: pipeline
type: docker
name: build-tagged
platform:
os: linux
arch: amd64
steps:
- name: build
image: docker.io/volkerraschek/build-image:latest
commands:
- make container-image/build POSTFIXADMIN_IMAGE_VERSION=${DRONE_TAG}
volumes:
- name: docker_socket
path: /var/run/docker.sock
- name: push
image: docker.io/volkerraschek/build-image:latest
commands:
- make container-image/push POSTFIXADMIN_IMAGE_VERSION=${DRONE_TAG}
environment:
POSTFIXADMIN_IMAGE_REGISTRY_PASSWORD:
from_secret: container_image_registry_password
volumes:
- name: docker_socket
path: /var/run/docker.sock
- name: delete
image: docker.io/volkerraschek/build-image:latest
commands:
- make container-image/delete POSTFIXADMIN_IMAGE_VERSION=${DRONE_TAG}
volumes:
- name: docker_socket
path: /var/run/docker.sock
- name: notify
image: drillster/drone-email
environment:
PLUGIN_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
when:
status:
- changed
- failure
volumes:
- name: docker_socket
host:
path: /var/run/docker.sock
trigger:
event:
- tag
repo:
- volker.raschek/postfixadmin-docker
---
kind: pipeline
type: kubernetes
name: sync
platform:
os: linux
arch: amd64
steps:
- name: github
image: docker.io/appleboy/drone-git-push:latest
resources:
limits:
cpu: 50
memory: 25M
settings:
branch: master
remote: ssh://git@github.com/volker-raschek/postfixadmin-docker.git
force: true
ssh_key:
from_secret: ssh_key
- name: email-notification
environment:
PLUGIN_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: docker.io/drillster/drone-email:latest
resources:
limits:
cpu: 50
memory: 25M
when:
status:
- changed
- failure
trigger:
event:
- push
repo:
- volker.raschek/postfixadmin-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.11.1
- name: Build image
run: |
TAG=latest
docker buildx build \
--platform linux/arm64 \
--file Dockerfile \
--provenance false \
--tag git.cryptic.systems/volker.raschek/postfixadmin:${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.11.1
- name: Build image
run: |
TAG=latest
docker buildx build \
--platform linux/amd64 \
--file Dockerfile \
--provenance false \
--tag git.cryptic.systems/volker.raschek/postfixadmin:${TAG}-amd64 \
.

View File

@ -0,0 +1,22 @@
name: 'Lint Markdown files'
on:
pull_request:
types:
- opened
- reopened
- synchronize
push:
branches:
- master
workflow_dispatch: {}
jobs:
markdown-lint:
runs-on:
- ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- uses: DavidAnson/markdownlint-cli2-action@v20.0.0
with:
globs: '**/*.md'

View File

@ -0,0 +1,101 @@
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.11.1
- 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 \
--build-arg POSTFIXADMIN_VERSION=${{ github.ref_name }} \
--file Dockerfile \
--platform linux/arm64 \
--provenance false \
--push \
--tag git.cryptic.systems/volker.raschek/postfixadmin:${TAG}-arm64 \
.
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.11.1
- 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 \
--build-arg POSTFIXADMIN_VERSION=${{ github.ref_name }} \
--file Dockerfile \
--platform linux/amd64 \
--provenance false \
--push \
--tag git.cryptic.systems/volker.raschek/postfixadmin:${TAG}-amd64 \
.
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/postfixadmin:${TAG} \
--amend git.cryptic.systems/volker.raschek/postfixadmin:${TAG}-amd64 \
--amend git.cryptic.systems/volker.raschek/postfixadmin:${TAG}-arm64
docker manifest push git.cryptic.systems/volker.raschek/postfixadmin:${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/postfixadmin:${TAG} \
docker://docker.io/volkerraschek/postfixadmin:${TAG}

View File

@ -0,0 +1,22 @@
name: Update Docker Hub Description
on:
push:
branches:
- master
paths:
- README.md
workflow_dispatch: {}
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/postfixadmin
readme-filepath: README.md

View File

@ -45,19 +45,17 @@ MD012:
# MD013/line-length - Line length
MD013:
# Number of characters
line_length: 80
line_length: 120
# Number of characters for headings
heading_line_length: 80
heading_line_length: 120
# Number of characters for code blocks
code_block_line_length: 80
code_block_line_length: 120
# Include code blocks
code_blocks: false
# Include tables
tables: false
# Include headings
headings: true
# Include headings
headers: true
# Strict length checking
strict: false
# Stern length checking
@ -70,11 +68,6 @@ MD022:
# Blank lines below heading
lines_below: 1
# MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content
MD024:
# Only check sibling headings
allow_different_nesting: true
# MD025/single-title/single-h1 - Multiple top-level headings in the same document
MD025:
# Heading level
@ -128,8 +121,7 @@ MD041:
# MD044/proper-names - Proper names should have the correct capitalization
MD044:
# List of proper names
names:
- PostfixAdmin
names: []
# Include code blocks
code_blocks: false

View File

@ -1,8 +1,7 @@
FROM docker.io/library/php:7.4-apache
# POSTFIXADMIN VERSION
ARG POSTFIXADMIN_VERSION \
POSTFIXADMIN_SHA512
ARG POSTFIXADMIN_VERSION
# APACHE
ENV APACHE_DOCUMENT_ROOT /var/www/html/public
@ -24,45 +23,47 @@ ENV POSTFIXADMIN_DATABASE_TYPE=sqlite \
# docker-entrypoint.sh dependencies
RUN set -eux; \
apt-get update; \
apt-get install --yes --no-install-recommends gosu; \
apt-get install --yes --no-install-recommends gosu apache2-utils; \
rm --recursive --force /var/lib/apt/lists/*
# Install required PHP extensions
RUN set -ex; \
savedAptMark="$(apt-mark showmanual)"; \
apt-get update; \
apt-get install --yes --no-install-recommends \
libc-client2007e-dev \
libkrb5-dev \
libpq-dev \
libsqlite3-dev; \
docker-php-ext-configure imap --with-imap-ssl --with-kerberos; \
docker-php-ext-install -j "$(nproc)" \
imap \
pdo_mysql \
pdo_pgsql \
pdo_sqlite \
pgsql; \
apt-mark auto '.*' > /dev/null; \
apt-mark manual $savedAptMark; \
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
| awk '/=>/ { print $3 }' \
| sort -u \
| xargs -r dpkg-query -S \
| cut -d: -f1 \
| sort -u \
| xargs -rt apt-mark manual; \
apt-get purge --yes --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm --recursive --force /var/lib/apt/lists/*
savedAptMark="$(apt-mark showmanual)"; \
apt-get update; \
apt-get install --yes --no-install-recommends \
libc-client2007e-dev \
libkrb5-dev \
libpq-dev \
libsqlite3-dev; \
docker-php-ext-configure imap --with-imap-ssl --with-kerberos; \
docker-php-ext-install -j "$(nproc)" \
imap \
pdo_mysql \
pdo_pgsql \
pdo_sqlite \
pgsql; \
apt-mark auto '.*' > /dev/null; \
apt-mark manual $savedAptMark; \
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
| awk '/=>/ { print $3 }' \
| sort -u \
| xargs -r dpkg-query -S \
| cut -d: -f1 \
| sort -u \
| xargs -rt apt-mark manual; \
if [ ! -z ${POSTFIXADMIN_VERSION} ]; then \
curl --fail --silent --show-error --location "https://github.com/postfixadmin/postfixadmin/archive/postfixadmin-${POSTFIXADMIN_VERSION}.tar.gz" --output postfixadmin.tar.gz; \
tar --extract --file postfixadmin.tar.gz --directory /var/www/html --strip-components=1; \
rm postfixadmin.tar.gz; \
else \
apt-get install --yes git; \
git clone https://github.com/postfixadmin/postfixadmin.git /var/www/html; \
fi; \
apt-get purge --yes --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm --recursive --force /var/lib/apt/lists/*
RUN set -eu; \
curl --fail --silent --show-error --location "https://github.com/postfixadmin/postfixadmin/archive/postfixadmin-${POSTFIXADMIN_VERSION}.tar.gz" --output postfixadmin.tar.gz ; \
echo "${POSTFIXADMIN_SHA512} *postfixadmin.tar.gz" | sha512sum -c -; \
tar --extract --file postfixadmin.tar.gz --directory /var/www/html --strip-components=1; \
rm postfixadmin.tar.gz; \
# Does not exist in tarball but is required
mkdir --parents /var/www/html/templates_c; \
chown --recursive www-data:www-data /var/www/html
RUN mkdir --parents /var/www/html/templates_c; \
chown --recursive www-data:www-data /var/www/html
COPY entrypoint.sh /usr/local/bin/

View File

@ -1,49 +1,47 @@
POSTFIXADMIN_VERSION:=3.3.10
POSTFIXADMIN_SHA512:=e00fc9ea343a928976d191adfa01020ee0c6ddbe80a39e01ca2ee414a18247958f033970f378fe4a9974636172a5e094e57117ee9ac7b930c592f433097a7aca
# POSTFIXADMIN_VERSION
# Only required to install a specify version
POSTFIXADMIN_VERSION?=3.3.15 # renovate: datasource=github-tags depName=postfixadmin/postfixadmin extractVersion='postfixadmin-(?<version>\d+\.\d+\.\d+)$'
# CONTAINER_RUNTIME
# The CONTAINER_RUNTIME variable will be used to specified the path to a
# container runtime. This is needed to start and run a container image.
CONTAINER_RUNTIME?=$(shell which docker)
# PODMAN_BIN's and tools
PODMAN_BIN?=$(shell which podman)
# POSTFIXADMIN_IMAGE_REGISTRY_NAME
# Defines the name of the new container to be built using several variables.
POSTFIXADMIN_IMAGE_REGISTRY_NAME:=docker.io
POSTFIXADMIN_IMAGE_REGISTRY_USER:=volkerraschek
POSTFIXADMIN_IMAGE_NAMESPACE?=${POSTFIXADMIN_IMAGE_REGISTRY_USER}
POSTFIXADMIN_IMAGE_NAME:=postfixadmin
# POSTFIXADMIN_IMAGE
POSTFIXADMIN_IMAGE_REGISTRY_HOST?=git.cryptic.systems
POSTFIXADMIN_IMAGE_REPOSITORY?=volker.raschek/postfixadmin
POSTFIXADMIN_IMAGE_VERSION?=latest
POSTFIXADMIN_IMAGE_FULLY_QUALIFIED=${POSTFIXADMIN_IMAGE_REGISTRY_NAME}/${POSTFIXADMIN_IMAGE_NAMESPACE}/${POSTFIXADMIN_IMAGE_NAME}:${POSTFIXADMIN_IMAGE_VERSION}
POSTFIXADMIN_IMAGE_UNQUALIFIED=${POSTFIXADMIN_IMAGE_NAMESPACE}/${POSTFIXADMIN_IMAGE_NAME}:${POSTFIXADMIN_IMAGE_VERSION}
POSTFIXADMIN_IMAGE_FULLY_QUALIFIED=${POSTFIXADMIN_IMAGE_REGISTRY_HOST}/${POSTFIXADMIN_IMAGE_REPOSITORY}:${POSTFIXADMIN_IMAGE_VERSION}
# BUILD CONTAINER IMAGE
# ==============================================================================
PHONY:=container-image/build
container-image/build:
${CONTAINER_RUNTIME} build \
${PODMAN_BIN} build \
--build-arg POSTFIXADMIN_VERSION=${POSTFIXADMIN_VERSION} \
--build-arg POSTFIXADMIN_SHA512=${POSTFIXADMIN_SHA512} \
--file Dockerfile \
--no-cache \
--pull \
--tag ${POSTFIXADMIN_IMAGE_FULLY_QUALIFIED} \
--tag ${POSTFIXADMIN_IMAGE_UNQUALIFIED} \
.
# DELETE CONTAINER IMAGE
# ==============================================================================
PHONY:=container-image/delete
container-image/delete:
- ${CONTAINER_RUNTIME} image rm ${POSTFIXADMIN_IMAGE_FULLY_QUALIFIED} ${POSTFIXADMIN_IMAGE_UNQUALIFIED}
- ${CONTAINER_RUNTIME} image rm ${PHP_IMAGE_FULL}
- ${PODMAN_BIN} image rm ${POSTFIXADMIN_IMAGE_FULLY_QUALIFIED}
# PUSH CONTAINER IMAGE
# ==============================================================================
PHONY+=container-image/push
container-image/push:
echo ${POSTFIXADMIN_IMAGE_REGISTRY_PASSWORD} | ${CONTAINER_RUNTIME} login ${POSTFIXADMIN_IMAGE_REGISTRY_NAME} --username ${POSTFIXADMIN_IMAGE_REGISTRY_USER} --password-stdin
${CONTAINER_RUNTIME} push ${POSTFIXADMIN_IMAGE_FULLY_QUALIFIED}
echo ${POSTFIXADMIN_IMAGE_REGISTRY_PASSWORD} | ${PODMAN_BIN} login ${POSTFIXADMIN_IMAGE_REGISTRY_NAME} --username ${POSTFIXADMIN_IMAGE_REGISTRY_USER} --password-stdin
${PODMAN_BIN} push ${POSTFIXADMIN_IMAGE_FULLY_QUALIFIED}
${PODMAN_BIN} logout ${POSTFIXADMIN_IMAGE_REGISTRY_HOST}
# PUSH CONTAINER IMAGE TO DOCKER
# ==============================================================================
PHONY+=container-image/push-to-docker-daemon
container-image/push-to-docker-daemon:
${PODMAN_BIN} push ${POSTFIXADMIN_IMAGE_FULLY_QUALIFIED} docker-daemon:${POSTFIXADMIN_IMAGE_FULLY_QUALIFIED}
# PHONY
# ==============================================================================

199
README.md
View File

@ -1,78 +1,72 @@
# PostfixAdmin
[![Build Status](https://drone.cryptic.systems/api/badges/volker.raschek/postfixadmin-docker/status.svg)](https://drone.cryptic.systems/volker.raschek/postfixadmin-docker)
[![Docker Pulls](https://img.shields.io/docker/pulls/volkerraschek/postfixadmin)](https://hub.docker.com/r/volkerraschek/postfixadmin)
[![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/volker-raschek)](https://artifacthub.io/packages/search?repo=volker-raschek)
This is an alternative project to build a container image for
[PostfixAdmin](https://github.com/postfixadmin/postfixadmin).
The main goal of this alternative image is to support a kubernetes deployment
via helm. Furthermore, the container image support configuring via [environment
variables](#supported-environment-variables).
The main goal of this alternative image is to support a kubernetes deployment via helm. Furthermore, the container image
support configuring via [environment variables](#supported-environment-variables).
To deploy PostfixAdmin via `helm` checkout the repository on
[artifacthub.io](https://artifacthub.io/packages/helm/volker-raschek/postfixadmin)
for more details.
[artifacthub.io](https://artifacthub.io/packages/helm/volker-raschek/postfixadmin) for more details.
## Supported environment variables
This list is an overview over some important environment variables. The
environment variables are composed on the key of the PHP configuration with the
prefix `POSTFIXADMIN_`. You can take an example
[configuration](https://github.com/postfixadmin/postfixadmin/blob/master/config.inc.php)
from the upstream project.
This list is an overview over some important environment variables. The environment variables are composed on the key of
the PHP configuration with the prefix `POSTFIXADMIN_`. You can take an example
[configuration](https://github.com/postfixadmin/postfixadmin/blob/master/config.inc.php) from the upstream project.
| name | default |
| ----------------------------------- | --------------------------- |
| `POSTFIXADMIN_ADMIN_EMAIL` | |
| `POSTFIXADMIN_ADMIN_SMTP_PASSWORD` | |
| `POSTFIXADMIN_ADMIN_NAME` | |
| `POSTFIXADMIN_DATABASE_TYPE` | `sqlite` |
| `POSTFIXADMIN_DATABASE_USER` | |
| `POSTFIXADMIN_DATABASE_PASSWORD` | |
| `POSTFIXADMIN_DATABASE_HOST` | |
| `POSTFIXADMIN_DATABASE_PORT` | |
| `POSTFIXADMIN_DATABASE_NAME` | `/var/tmp/postfixadmin.db` |
| `POSTFIXADMIN_DEFAULT_LANGUAGE` | `en` |
| `POSTFIXADMIN_DATABASE_USE_SSL` | |
| `POSTFIXADMIN_DATABASE_KEY` | |
| `POSTFIXADMIN_DATABASE_CERT` | |
| `POSTFIXADMIN_DATABASE_CA` | |
| `POSTFIXADMIN_DATABASE_PREFIX` | |
| `POSTFIXADMIN_ENCRYPT` | `md5crypt` |
| `POSTFIXADMIN_SMTP_SERVER` | `localhost` |
| `POSTFIXADMIN_SMTP_PORT` | `25` |
| name | default |
| ----------------------------------- | ------------------------------------------- |
| `POSTFIXADMIN_ADMIN_EMAIL` | |
| `POSTFIXADMIN_ADMIN_SMTP_PASSWORD` | |
| `POSTFIXADMIN_ADMIN_NAME` | |
| `POSTFIXADMIN_DATABASE_TYPE` | `sqlite` |
| `POSTFIXADMIN_DATABASE_USER` | |
| `POSTFIXADMIN_DATABASE_PASSWORD` | |
| `POSTFIXADMIN_DATABASE_HOST` | |
| `POSTFIXADMIN_DATABASE_PORT` | |
| `POSTFIXADMIN_DATABASE_NAME` | `/var/tmp/postfixadmin.db` |
| `POSTFIXADMIN_DEFAULT_LANGUAGE` | `en` |
| `POSTFIXADMIN_DATABASE_USE_SSL` | |
| `POSTFIXADMIN_DATABASE_KEY` | |
| `POSTFIXADMIN_DATABASE_CERT` | |
| `POSTFIXADMIN_DATABASE_CA` | |
| `POSTFIXADMIN_DATABASE_PREFIX` | |
| `POSTFIXADMIN_ENCRYPT` | `md5crypt` |
| `POSTFIXADMIN_SMTP_SERVER` | `localhost` |
| `POSTFIXADMIN_SMTP_PORT` | `25` |
| `POSTFIXADMIN_SMTP_CLIENT` | |
| `POSTFIXADMIN_SHOW_FOOTER_TEXT` | `YES` |
| `POSTFIXADMIN_FOOTER_TEXT` | `Return to change-this-to-your.domain.tld` |
| `POSTFIXADMIN_FOOTER_LINK` | `http://change-this-to-your.domain.tld` |
| `POSTFIXADMIN_FETCHMAIL` | `YES` |
### POSTFIXADMIN_ADMIN_EMAIL
Define the email address of an admin via `POSTFIXADMIN_ADMIN_EMAIL` to send
emails or broadcast messages in his name instead of the email address of the
logged in admin, which wants to send an email or broadcast message about the
PostfixAdmin interface. By default is the environment variable not defined. The
value of the environment will be configured as the following config setting:
`$CONF['admin_email']`.
Define the email address of an admin via `POSTFIXADMIN_ADMIN_EMAIL` to send emails or broadcast messages in his name
instead of the email address of the logged in admin, which wants to send an email or broadcast message about the
PostfixAdmin interface. By default is the environment variable not defined. The value of the environment will be
configured as the following config setting: `$CONF['admin_email']`.
### POSTFIXADMIN_ADMIN_SMTP_PASSWORD
Define the smtp password via `POSTFIXADMIN_ADMIN_SMTP_PASSWORD` of the admin
which should be used to send emails or broadcast messages about the PostfixAdmin
interface. By default is the environment variable not defined. The value of the
environment will be configured as the following config setting:
`$CONF['admin_smtp_password']`.
Define the smtp password via `POSTFIXADMIN_ADMIN_SMTP_PASSWORD` of the admin which should be used to send emails or
broadcast messages about the PostfixAdmin interface. By default is the environment variable not defined. The value of
the environment will be configured as the following config setting: `$CONF['admin_smtp_password']`.
### POSTFIXADMIN_ADMIN_NAME
Define the name of the admin via `POSTFIXADMIN_ADMIN_NAME` which should be used
to send emails or broadcast messages about the PostfixAdmin interface. By
default is the environment variable not defined. The value of the environment
will be configured as the following config setting: `$CONF['admin_name']`.
Define the name of the admin via `POSTFIXADMIN_ADMIN_NAME` which should be used to send emails or broadcast messages
about the PostfixAdmin interface. By default is the environment variable not defined. The value of the environment will
be configured as the following config setting: `$CONF['admin_name']`.
### POSTFIXADMIN_DATABASE_TYPE
PostfixAdmin support currently sqlite, postgres and mysql/mariadb. About the
envrionment variable `POSTFIXADMIN_DATABASE_TYPE` can the backend type defined.
The default value is `sqlite`.
PostfixAdmin support currently sqlite, postgres and mysql/mariadb. About the envrionment variable
`POSTFIXADMIN_DATABASE_TYPE` can the backend type defined. The default value is `sqlite`.
| database type | value |
| ------------- | --------- |
@ -82,27 +76,23 @@ The default value is `sqlite`.
### POSTFIXADMIN_DATABASE_USER
The environment variable `POSTFIXADMIN_DATABASE_USER` is undefined and only
required if the database backend is not `sqlite`. The value of the environment
will be configured as the following config setting: `$CONF['database_user']`.
The environment variable `POSTFIXADMIN_DATABASE_USER` is undefined and only required if the database backend is not
`sqlite`. The value of the environment will be configured as the following config setting: `$CONF['database_user']`.
### POSTFIXADMIN_DATABASE_PASSWORD
The environment variable `POSTFIXADMIN_DATABASE_PASSWORD` is undefined and only
required if the database backend is not `sqlite`. The value of the environment
will be configured as the following config setting: `$CONF['database_password']`.
The environment variable `POSTFIXADMIN_DATABASE_PASSWORD` is undefined and only required if the database backend is not
`sqlite`. The value of the environment will be configured as the following config setting: `$CONF['database_password']`.
### POSTFIXADMIN_DATABASE_HOST
The environment variable `POSTFIXADMIN_DATABASE_HOST` is undefined and only
required if the database backend is not `sqlite`. The value of the environment
will be configured as the following config setting: `$CONF['database_host']`.
The environment variable `POSTFIXADMIN_DATABASE_HOST` is undefined and only required if the database backend is not
`sqlite`. The value of the environment will be configured as the following config setting: `$CONF['database_host']`.
### POSTFIXADMIN_DATABASE_PORT
The environment variable `POSTFIXADMIN_DATABASE_PORT` will automatically defined
with default values when instead of `sqlite` an other database backend has been
selected. The value of the environment will be configured as the following
The environment variable `POSTFIXADMIN_DATABASE_PORT` will automatically defined with default values when instead of
`sqlite` an other database backend has been selected. The value of the environment will be configured as the following
config setting: `$CONF['database_port']`.
| database type | default port |
@ -112,66 +102,81 @@ config setting: `$CONF['database_port']`.
### POSTFIXADMIN_DATABASE_NAME
The environment variable `POSTFIXADMIN_DATABASE_NAME` is defined by default with
the value `/var/tmp/postfixadmin.db`. This is the path where the `sqlite`
database is stored. If `pgsql` or `mysqli` is defined instead of `sqlite` as
database backend type, can the environment variable used to define the database
name. The value of the environment will be configured as the following config
setting: `$CONF['database_name']`.
The environment variable `POSTFIXADMIN_DATABASE_NAME` is defined by default with the value `/var/tmp/postfixadmin.db`.
This is the path where the `sqlite` database is stored. If `pgsql` or `mysqli` is defined instead of `sqlite` as
database backend type, can the environment variable used to define the database name. The value of the environment will
be configured as the following config setting: `$CONF['database_name']`.
### POSTFIXADMIN_DATABASE_USE_SSL
Encrypt a database connection to an external database like postgres, mariadb or
mysqli via SSL when `POSTFIXADMIN_DATABASE_USE_SSL=true`. Additionally should be
the other SSL environment variables defined to establish successfully a SSL
encrypted connection. The value of the environment will be configured as the
following config setting: `$CONF['database_use_ssl']`.
Encrypt a database connection to an external database like postgres, mariadb or mysqli via SSL when
`POSTFIXADMIN_DATABASE_USE_SSL=true`. Additionally should be the other SSL environment variables defined to establish
successfully a SSL encrypted connection. The value of the environment will be configured as the following config
setting: `$CONF['database_use_ssl']`.
### POSTFIXADMIN_DATABASE_SSL_KEY
Via `POSTFIXADMIN_DATABASE_SSL_KEY` can be the path to the private key defined
which should be used to encrypt the database connection via SSL. By default is
this environment variable undefined. The value of the environment will be
Via `POSTFIXADMIN_DATABASE_SSL_KEY` can be the path to the private key defined which should be used to encrypt the
database connection via SSL. By default is this environment variable undefined. The value of the environment will be
configured as the following config setting: `$CONF['database_ssl_key']`.
### POSTFIXADMIN_DATABASE_SSL_CERT
Via `POSTFIXADMIN_DATABASE_SSL_CERT` can be the path to the certificate defined
which should be used to encrypt the database connection via SSL. By default is
this environment variable undefined. The value of the environment will be
Via `POSTFIXADMIN_DATABASE_SSL_CERT` can be the path to the certificate defined which should be used to encrypt the
database connection via SSL. By default is this environment variable undefined. The value of the environment will be
configured as the following config setting: `$CONF['database_ssl_cert']`.
### POSTFIXADMIN_DATABASE_SSL_CA
Via `POSTFIXADMIN_DATABASE_SSL_CA` can be the path to the root certificate of
the certificate authority defined which should be trusted to encrypt the database
connection via SSL. By default is this environment variable undefined. The value
of the environment will be configured as the following config setting:
`$CONF['database_ssl_ca']`.
Via `POSTFIXADMIN_DATABASE_SSL_CA` can be the path to the root certificate of the certificate authority defined which
should be trusted to encrypt the database connection via SSL. By default is this environment variable undefined. The
value of the environment will be configured as the following config setting: `$CONF['database_ssl_ca']`.
### POSTFIXADMIN_DATABASE_PREFIX
It make much sense to use a prefix name for all PostfixAdmin related tables,
when the tables, views and so on should be stored into a shared schema like
`public`. About the environment variable `POSTFIXADMIN_DATABASE_PREFIX` can such
a prefix defined. By default is this variable undefined, but when not it results
in the config setting `$CONF['database_prefix']`.
It make much sense to use a prefix name for all PostfixAdmin related tables, when the tables, views and so on should be
stored into a shared schema like `public`. About the environment variable `POSTFIXADMIN_DATABASE_PREFIX` can such a
prefix defined. By default is this variable undefined, but when not it results in the config setting
`$CONF['database_prefix']`.
### POSTFIXADMIN_DEFAULT_LANGUAGE
Default language of PostfixAdmin. Checkout the [official
repository](https://github.com/postfixadmin/postfixadmin/tree/master/languages)
under `./languages` to get a list of all supported languages.
repository](https://github.com/postfixadmin/postfixadmin/tree/master/languages) under `./languages` to get a list of all
supported languages.
### POSTFIXADMIN_ENCRYPT
Via `POSTFIXADMIN_ENCRYPT` can be the algorithm specified to encrypt passwords
of users. The algorithm `md5crypt` is defined as default. Other possible values
are documented
[here](https://github.com/postfixadmin/postfixadmin/blob/master/DOCUMENTS/HASHING.md).
Via `POSTFIXADMIN_ENCRYPT` can be the algorithm specified to encrypt passwords of users. The algorithm `md5crypt` is
defined as default. Further possible algorithms can be found in the
[documentation](https://github.com/postfixadmin/postfixadmin/blob/master/DOCUMENTS/HASHING.md).
### POSTFIXADMIN_SETUP_PASSWORD
To login into the `setup.php` page is the setup password required. This can be
defined via the variable `POSTFIXADMIN_SETUP_PASSWORD`. The password will not be
configured in the `config.local.php` as plain text. It will be encrypted.
To login into the `setup.php` page is the setup password required. This can be defined via the variable
`POSTFIXADMIN_SETUP_PASSWORD`. The password will be hashed via bcrypt and used as value for the setting
`$CONF['setup_password']` in the config file `config.local.php`.
### POSTFIXADMIN_SMTP_CLIENT
Hostname (FQDN) of the server hosting PostfixAdmin used in the `HELO` when sending emails from PostfixAdmin. The value
of the environment will be configured as the following config setting and is empty by default: `$CONF['smtp_client']`.
### POSTFIXADMIN_SMTP_SERVER
Hostname (FQDN) of your mail server. The default value is `localhost`. The value of the environment will be configured
as the following config setting: `$CONF['smtp_server']`.
### POSTFIXADMIN_SMTP_PORT
Port of your mail server. The default value is `25`. The value of the environment will be configured as the following
config setting: `$CONF['smtp_port']`.
### POSTFIXADMIN_SHOW_FOOTER_TEXT
Enable or disable via `YES` or `NO` the footer text displayed on all sites. Use `POSTFIXADMIN_FOOTER_TEXT` and
`POSTFIX_FOOTER_LINK` to customize the text.
### POSTFIXADMIN_FETCHMAIL
Enable or disable via `YES` or `NO` the fetchmail tab. It has nothing todo with the fetchmail cron job.

View File

@ -1,6 +1,6 @@
version: "3"
services:
postfixadmin:
image: localhost/volkerraschek/postfixadmin:latest
image: git.cryptic.systems/volker.raschek/postfixadmin:latest
ports:
- 0.0.0.0:8080:80/tcp

View File

@ -40,6 +40,10 @@ if [ "${POSTFIXADMIN_DATABASE_TYPE}" = 'sqlite' ]; then
fi
fi
# bycrypt POSTFIXADMIN_SETUP_PASSWORD
if [ ! -z ${POSTFIXADMIN_SETUP_PASSWORD+x} ]; then
POSTFIXADMIN_SETUP_PASSWORD=$(htpasswd -bnBC 10 "" "${POSTFIXADMIN_SETUP_PASSWORD}" | tr -d ':\n')
fi
# create config.local.pgp with vaules from env with POSTFIXADMIN_ prefix
POSTFIXADMIN_ENV_VARS=($(env | sort | grep --perl-regexp '^POSTFIXADMIN_.*'))

9
renovate.json Normal file
View File

@ -0,0 +1,9 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"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"
]
}