Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add Dockerfile for pristine Foswiki setup #35

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

Dieken
Copy link

@Dieken Dieken commented Nov 26, 2022

@timlegge already has a docker image with many extensions, but I want to base on Debian and Apache 2, stay more close with https://foswiki.org/System/InstallationGuide for new users.

I didn't choose FastCGI because mod_proxy_fcgi in apache-2.4 isn't supported by https://foswiki.org/Support.ApacheConfigGenerator yet, and personally I would like to omit extra setup for FastCGI.

@MichaelDaum
Copy link
Member

MichaelDaum commented Nov 27, 2022

Basically I really like he idea to ship a proper docker file as part of the distro: this is a good thing to do (tm). Also, I do like the use of Debian rather than Alpine Linux. However I don't quite agree on some of your other assumtions with regards to apache and fcgi. Basically, best practice nowadays is nginx and fcgi instead of apache and mod_perl, no matter what the installation guide says. Yes, we need to fix the installation guide. Yes we need an nginx config generator. :)

@Dieken
Copy link
Author

Dieken commented Nov 28, 2022

@MichaelDaum Please review again, it now supports Apache mod_fcgid and Nginx FastCGI, the latter is used by default.

I tried to make Apache mod_proxy_fcgi work but failed, that's why the commit message says it requires further configuration, I guess this doesn't matter much for this PR, we may enhance in another PR.

Notice the Dockerfile install both Apache and Nginx, that wastes some disk space but it's intended, I want to play with both to compare their cpu & memory usage, also serving performance. The Dockerfile is also clean without introducing an extra variable in the RUN commands.

@Dieken Dieken force-pushed the master branch 4 times, most recently from c027d36 to 5f5ed17 Compare November 28, 2022 19:20
TODO: Actually mod_proxy_fcgi requires further manual configuration.

Import from Dieken/foswiki-docker@4fb9363
@cieska
Copy link
Contributor

cieska commented Dec 15, 2022

Basically, best practice nowadays is nginx and fcgi instead of apache and mod_perl, no matter what the installation guide says. Yes, we need to fix the installation guide. Yes we need an nginx config generator. :)

Yes, pleeeeeaaase.

@Dieken
Copy link
Author

Dieken commented Dec 28, 2022

Any further review feedback? Could we get this merged?

@BramVan-Oosterhout
Copy link
Contributor

BramVan-Oosterhout commented Dec 29, 2022 via email

@timlegge
Copy link
Member

I would make it a seperate repo under the project..

@BramVan-Oosterhout
Copy link
Contributor

BramVan-Oosterhout commented Dec 30, 2022 via email

@timlegge
Copy link
Member

@BramVan-Oosterhout I would package up the required Dockerfile and dependencies unde a repo an make it a fepo under Foswiki. Think as if you were to import timlegge/docker-foswiki under the Foswiki organization.

Someone an clone that independent repo and go from there

@timlegge
Copy link
Member

Not sure if having it as a Contrib is needed as the purpose of the Docker file is to create a functioning installation not be a part of the overall project.

@BramVan-Oosterhout
Copy link
Contributor

I have created a prototype of DockerContrib at https://github.com/BramVan-Oosterhout/DockerContrib

It is very rudimentary. But it allows extension to multiple docker images. A container based on the image defined here can be started with perl docker-install.pl dieken -build.

Please leave comments for DockerContrib with that project, not here.

@Dieken
Copy link
Author

Dieken commented Jan 5, 2023

Agree with @timlegge, usually people use Docker because they don't want to learn how to do manual installation, two commands docker build and docker run are enough, or even just use Docker image on Docker Hub, it's very easy to start.

The DockerContrib requires a Foswiki Installation, but if I already have one, I probably don't need the Docker image any more.

To make new users easy to find the Docker image, it's better to import timlegge/docker-foswiki or my repo into foswiki organization, either in standalone repository or directly in this repository, that's why I sent a pull request.

Btw, I don't mind timlegge/docker-foswiki is chosen, my repo is very new and I actually don't use Foswiki much now.

@timlegge
Copy link
Member

timlegge commented Jan 5, 2023 via email

@BramVan-Oosterhout
Copy link
Contributor

BramVan-Oosterhout commented Jan 6, 2023 via email

@MichaelDaum
Copy link
Member

Please add it to DockerContrib. I'd like to keep the core lean. For my taste there is too much going in core already such as all those plugins should be in separate repos imho for faster release cycles of their own.

Nevertheless, we should advertiese docker based installs on the download page on foswiki.org.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
5 participants