Start Playing Federated Wiki: http://start.fed.wiki
docker run -p 3000:3000 -it --rm \
dobbs/farm
Visit http://localhost:3000 and http://anything.localhost:3000
docker run -p 3000:3000 -it --rm \
-v ~/.wiki:/home/node/.wiki \
dobbs/farm
Your wiki pages and configuration will be saved in the ~/.wiki folder.
This image's tag does not match the version of the included wiki software. Our version indicates the scale of changes in this tiny devops pipeline.
Testing new images locally:
TAG=1.0.14-prefer-title
IMAGE=dobbs/farm:$TAG
docker build --tag $IMAGE .
You might also want to remember the most recent tag:
git tag --list | tail -1
Update WIKI_VERSIONS.txt
docker run --rm $IMAGE wiki --version > WIKI_VERSIONS.txt
GitHub
git tag -am "" "$TAG"
git push --atomic origin main "$TAG"
Docker Hub
docker build --tag $IMAGE . # if you haven't already
docker build --tag dobbs/farm:latest . # if you haven't already
docker push $IMAGE
docker push dobbs/farm:latest
Sometimes we publish a docker image with no changes to the wiki source
code. This allows us to pick up non-breaking changes to some of the
plugins. Using --no-cache
ensures docker re-runs this line from the
Dockerfile
in particular: npm install -g --prefix . $WIKI_PACKAGE
.
docker build --no-cache --tag $IMAGE . # if you haven't already
docker build --tag dobbs/farm:latest . # if you haven't already
docker push $IMAGE
docker push dobbs/farm:latest
We published 1.0.16 on May 2. The friends security plugin was updated to 0.2.5 on May 17. See fedwiki/wiki-security-friends
We built a new image with no changes to our Dockerfile and published it as version 1.0.17. The only change for 1.0.17 is this updated README.md so we can remember how to do this again in the future.
We chose our tag and followed exactly the same steps above to publish container images.
With the local kubernetes example (see examples/k8s/README.md):
k3d image import $IMAGE --cluster wiki
kubectl patch deployment.apps/wiki-deployment \
--type='json' \
-p='[{"op": "replace", "path": "/spec/template/spec/containers/0/image", "value":"'$IMAGE'"}]'