Fix(docker) : Update Dockerfile and docs to use Poetry and NPM#1719
Fix(docker) : Update Dockerfile and docs to use Poetry and NPM#1719allamiro wants to merge 7 commits intonextcloud:masterfrom
Conversation
Updated Dockerfile to use Node 18, Python 3.10, NPM, and Poetry, Signed-off-by: Tamir Suliman <allamir2002@yahoo.com>
Update the contents of .dockerignore Signed-off-by: Tamir Suliman <allamir2002@yahoo.com>
Updated documentation file with the modernized commands Signed-off-by: Tamir Suliman <allamir2002@yahoo.com>
Updated Python version from 3.10 to 3.12 in both translations and main stages Signed-off-by: Tamir Suliman <allamir2002@yahoo.com> Signed-off-by: Tamir Suliman <allamiro@gmail.com> Updated the Dockerfile to align with the current repository layout: - migrated from legacy requirements/yarn to Poetry and npm - updated Python base images to 3.12 to match project requirements - updated Docker documentation for modern docker compose usage Local build now progresses against the current branch with the updated dependency model.
6c9cd06 to
338fedb
Compare
|
Rebased on the latest master. The PR updates the Docker build to match the current repository state (pyproject.toml/poetry.lock and package-lock.json) and removes reliance on legacy requirements/ and yarn.lock. |
|
@allamiro Thanks so much for taking care of this! Before we merge this, do you mind if we ask what you plan to do with the Docker container? |
Thanks for asking! The plan is to use this container to support a self-hosted, air-gapped Kubernetes environment for our Nextcloud instances. Because we support teams across multiple locations using static, IP-based infrastructure, this image provides the foundation for a portable, isolated deployment. While I am still finalizing the strategy for offline dependency management and internal image and apps mirroring, this PR establishes the core build logic required for our internal hosting workflow. Working on the feature and the documentation. If you have any feedback or additional information that i need to add please let me know |
Motivation and Context
The Docker production build currently fails on the
masterbranch because theDockerfileexpects legacy dependency files (requirements/andyarn.lock) that have been migrated to Poetry and modern NPM. This PR updates the Docker setup to align with the current architecture of the repository.Closes #1699
What has changed
8to18and Python from3.6to3.12to prevent EOL build failures and align with current project requirements.yarntonpm ciusingpackage-lock.json.pip install -r requirements.txtwithpoetry install, directly utilizingpyproject.tomlandpoetry.lock. Implemented conditional logic to exclude dev dependencies in production builds..venv,poetry.toml, etc.) to optimize the build context.docs/prodinstalldocker.rstto replace deprecateddocker-composecommands with the moderndocker composeplugin syntax.Testing