Skip to content

Improve Dockerfile#1962

Merged
kalsi-avneet merged 5 commits intoKozea:masterfrom
zguig52:patch-1
Feb 2, 2026
Merged

Improve Dockerfile#1962
kalsi-avneet merged 5 commits intoKozea:masterfrom
zguig52:patch-1

Conversation

@zguig52
Copy link
Contributor

@zguig52 zguig52 commented Jan 9, 2026

- add curl for HTTPS healthchecks (Kozea#1961)
- remove forced port binding from CMD to allow config file use(Kozea#1960)
- remove default TCP port EXPOSE command as it is not really usefull (https://forums.docker.com/t/what-is-the-use-of-expose-in-docker-file/37726)
@pbiering pbiering requested a review from kalsi-avneet January 10, 2026 06:42
@pbiering pbiering added the packaging:container related to container packaging label Jan 10, 2026
@pbiering pbiering modified the milestones: 3.6.0, 3.6.1 Jan 10, 2026
@pbiering
Copy link
Collaborator

@kalsi-avneet - any ETA for review?

@kalsi-avneet
Copy link
Collaborator

@kalsi-avneet - any ETA for review?

Sorry for the delay. I had a busy week.

I have reviewed the PR and am waiting for the reply to my request in #1960 (comment) :

Could you share your config file and compose.yaml/docker-compose.yml/docker run command? I was not able to get hosts = localhost:15232 to work. Changing it to hosts = 0.0.0.0:15232 works.

Here is my review:

changes proposed in this PR

  1. add curl for HTTPS healthchecks
  2. remove forced port binding from CMD to allow config file use
  3. remove default TCP port EXPOSE command as it is not really usefull

My review

  • I agree with (1) and (3)
  • I have some questions/discussion points about (2) as below:

remove forced port binding from CMD to allow config file use

This proposed change would allow the user to allow changing the port inside the docker container by reading the config file.

The current behavior of Radicale's docker is that the user does not need to specify a port for inside the container.
Port/IP for outside the container can be published using the compose.yaml or docker run command. After applying the current change, the user will have to specify the port explicitly. This will be an additional requirement for the user.

My question/comment about localhost was because Radicale defaults to listening on localhost:5232 even when no config is specified 1, but this would not work inside the container, because 0.0.0.0:5232 would have to be specified in order for docker to listen on that port. Since hosts = localhost:15232 was mentioned in the issue specifically, I was interested to know how that was achieved, because then the user would not have to explicitly specify the IP:port if they want the default.

Additionally, the Dockerfile is also used to publish on Cloudron, so I am concerned that this change might impact them.

@pbiering , would it be possible to add the maintainer of Cloudron packaging as a reviewer too?

Footnotes

  1. https://github.com/Kozea/Radicale/blob/a4a39318c38658a8915e2ecd43cada758b0c57e5/DOCUMENTATION.md#L824-L826

@pbiering
Copy link
Collaborator

would it be possible to add the maintainer of Cloudron packaging as a reviewer too?

Name? Potentially you have to mention first and then I can add.

@kalsi-avneet
Copy link
Collaborator

would it be possible to add the maintainer of Cloudron packaging as a reviewer too?

Name? Potentially you have to mention first and then I can add.

Oh, I was hoping you might know 😅

Let me see if I can figure out from the documentation or code

@kalsi-avneet
Copy link
Collaborator

Let me see if I can figure out from the documentation or code

I could not find maintainer's name in documentation

Radicale/DOCUMENTATION.md

Lines 2683 to 2706 in 4fb1672

Radicale has been packaged for:
* [ArchLinux](https://www.archlinux.org/packages/community/any/radicale/) by
David Runge
* [Debian](https://packages.debian.org/radicale) by Jonas Smedegaard
* [Gentoo](https://packages.gentoo.org/packages/www-apps/radicale)
by René Neumann, Maxim Koltsov and Manuel Rüger
* [Fedora/EnterpriseLinux](https://src.fedoraproject.org/rpms/radicale) by Jorti
and Peter Bieringer
* [Mageia](http://madb.mageia.org/package/show/application/0/name/radicale)
by Jani Välimaa
* [OpenBSD](http://openports.se/productivity/radicale) by Sergey Bronnikov,
Stuart Henderson and Ian Darwin
* [openSUSE](http://software.opensuse.org/package/Radicale?search_term=radicale)
by Ákos Szőts and Rueckert
* [PyPM](http://code.activestate.com/pypm/radicale/)
* [Slackware](http://schoepfer.info/slackware.xhtml#packages-network) by
Johannes Schöpfer
* [Trisquel](http://packages.trisquel.info/search?searchon=names&keywords=radicale)
* [Ubuntu](http://packages.ubuntu.com/radicale) by the MOTU and Jonas
Smedegaard
Radicale is also
[available on Cloudron](https://cloudron.io/button.html?app=org.radicale.cloudronapp2).

@zguig52
Copy link
Contributor Author

zguig52 commented Jan 20, 2026

Here it is. I did not thought about the broad impact for existing deployments

@pbiering pbiering removed this from the 3.6.1 milestone Jan 21, 2026
@zguig52 zguig52 requested a review from kalsi-avneet February 2, 2026 14:09
@kalsi-avneet kalsi-avneet merged commit f2f650f into Kozea:master Feb 2, 2026
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

packaging:container related to container packaging

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants