Skip to content

Add Docker support with docker-compose and automated release workflow#9753

Open
NotHimmel wants to merge 9 commits intoTiddlyWiki:masterfrom
NotHimmel:master
Open

Add Docker support with docker-compose and automated release workflow#9753
NotHimmel wants to merge 9 commits intoTiddlyWiki:masterfrom
NotHimmel:master

Conversation

@NotHimmel
Copy link
Copy Markdown
Contributor

Resolves #7387

  • Add Dockerfile (Node Alpine, unprivileged user, configurable via env vars)
  • Add docker-compose.yml with named volume and environment variable support
  • Add docker/entrypoint.sh for wiki init and --listen argument assembly
  • Add bin/docker-publish.sh for manual multi-platform image publishing
  • Add .github/workflows/docker-publish.yml for automated Docker Hub release on GitHub Release publish
  • Add editions/tw5.com howto tiddler documenting Docker usage

- Add Dockerfile (Node Alpine, unprivileged user, configurable via env vars)
- Add docker-compose.yml with named volume and environment variable support
- Add docker/entrypoint.sh for wiki init and --listen argument assembly
- Add bin/docker-publish.sh for manual multi-platform image publishing
- Add .github/workflows/docker-publish.yml for automated Docker Hub release on GitHub Release publish
- Add editions/tw5.com howto tiddler documenting Docker usage

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

@NotHimmel It appears that this is your first contribution to the project, welcome.

With apologies for the bureaucracy, please could you prepare a separate PR to the 'tiddlywiki-com' branch with your signature for the Contributor License Agreement (see contributing.md).

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 18, 2026

⚠️ Change Note Status

This PR appears to contain code changes but doesn't include a change note.

Please add a change note by creating a .tid file in editions/tw5.com/tiddlers/releasenotes/<version>/

📚 Documentation: Release Notes and Changes

💡 Note: If this is a documentation-only change, you can ignore this message.

@netlify
Copy link
Copy Markdown

netlify bot commented Mar 18, 2026

Deploy Preview for tiddlywiki-previews ready!

Name Link
🔨 Latest commit 5289a61
🔍 Latest deploy log https://app.netlify.com/projects/tiddlywiki-previews/deploys/69c0d6282923be0008ed3359
😎 Deploy Preview https://deploy-preview-9753--tiddlywiki-previews.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@github-actions
Copy link
Copy Markdown

NotHimmel has signed the Contributor License Agreement (see contributing.md)

Copy link
Copy Markdown
Member

@pmario pmario left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Jermolene @saqimtiaz ... IMO we should publish our official TW for docker image

Comment thread Dockerfile Outdated
Comment thread docker-compose.yml Outdated
Comment thread bin/docker-publish.sh Outdated
Comment thread bin/docker-publish.sh Outdated
Comment thread bin/docker-publish.sh Outdated
Comment thread .github/workflows/docker-publish.yml Outdated
Comment thread .github/workflows/docker-publish.yml Outdated
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Jermolene, this will require, that we have a proper Setup at DockerHub - Which we should have.

Secrets have to be properly setup here in the repo

Comment thread .dockerignore Outdated
NotHimmel and others added 7 commits March 20, 2026 07:56
Co-authored-by: Mario Pietsch <pmariojo@gmail.com>
Co-authored-by: Mario Pietsch <pmariojo@gmail.com>
Co-authored-by: Mario Pietsch <pmariojo@gmail.com>
Co-authored-by: Mario Pietsch <pmariojo@gmail.com>
Co-authored-by: Mario Pietsch <pmariojo@gmail.com>
Co-authored-by: Mario Pietsch <pmariojo@gmail.com>
Co-authored-by: Mario Pietsch <pmariojo@gmail.com>
@NotHimmel
Copy link
Copy Markdown
Contributor Author

@pmario I think the howto tiddler is meant for contributors reading the source, not for use inside the container — so that part doesn't belong in the Docker image.
Official Docker image is intended for running users' own wikis, not as a documentation server. Anyone who
wants offline docs can clone the repo themselves. Keeping the image lean seems like the better default.

Limit the Docker build context to the files needed for the server container so demos, tests and unrelated editions are excluded from the image.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@NotHimmel
Copy link
Copy Markdown
Contributor Author

@pmario How's it going?

@pmario
Copy link
Copy Markdown
Member

pmario commented Apr 19, 2026

@NotHimmel ... Docker images can only be created once a TW version has been published. So we need to develop a way that makes that possible. v5.4.0 is planned to be published 20th April

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Official Docker image?

2 participants