docs icon indicating copy to clipboard operation
docs copied to clipboard

Nginx examples should use stable version

Open TomorrowToday opened this issue 1 year ago • 5 comments

Nginx should not use the nginx default image in the readme examples because many users may not realize nginx/nginx:latest can be unstable. I propose nginx:stable be used in examples and an explanation be added to the beginning of the readme so users are aware of Nginx's odd-even versioning convention when selecting an image.

TomorrowToday avatar Jul 16 '24 19:07 TomorrowToday

cc NGINX maintainers: @thresheek @kikito @oxpa (just picking recent folks from https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fnginx -- it would also unrelatedly be a good idea to add some human GitHub handles in library/nginx for pings like this)

tianon avatar Jul 22 '24 17:07 tianon

Hi @TomorrowToday and thank you for your suggestion. mainline as used in nginx:latest is not "unstable". See https://www.f5.com/company/blog/nginx/nginx-1-18-1-19-released for some naming details (I know, it's confusing).

thresheek avatar Jul 22 '24 18:07 thresheek

The article directly conflicts with Documentation. Admin docs say Mainline is more likely to be buggy and Stable is recommended for production. Maybe those definitions changed at some point and haven't been updated yet.

TomorrowToday avatar Jul 22 '24 18:07 TomorrowToday

Indeed, it's misleading. "stable" is mostly "API-stable". I would argue that bugfixes (not security fixes) have a tendency to appear in mainline first, and if proven working, would later be backported to "stable" branches.

Meaning we shouldn't change the defaults for docs or the actual tags to point to stable versions first and foremost.

thresheek avatar Jul 24 '24 21:07 thresheek

A critical line is in the F5 blog post you linked:

"If you are concerned about the overhead of monitoring the mainline branch for new features and bug fixes, then using the stable branch means that you only need to review new functionality once a year, and bug fixes on an infrequent basis."

I've chatted with the Production Manager of NGINX for more clarity on the subject. TLDR: the blog is making a "general statement" about F5's recommendations, but the Admin documentation is still correct that Stable is preferred for production servers specifically. I think he'd agree with you that Mainline should be used in the docker guide. That conversation is public in the Nginx Slack.

I do at least think the above quote or a paraphrase of it should be added to the guide though so users can make an informed decision on whether they want Stable or Mainline.

I still personally believe Mainline is a mess and a headache for those new to Nginx. Reading their changelogs shows several times in the last few years that they've put a bug that breaks previously stable features on the mainline and it's taken them many months to push the fix.

TomorrowToday avatar Jul 26 '24 00:07 TomorrowToday