10 Commits
1.0.2 ... 1.0.8

Author SHA1 Message Date
8d7d0e5119 upgrade to wiki@0.23 2021-02-28 09:10:10 -07:00
1cf4d8e6ae moved example k8s deployment .yaml to deploy.wiki.do 2021-01-18 00:10:15 -07:00
2705d760bf rename default branch to main 2021-01-10 16:11:53 -07:00
ad1c5af0d8 change domain names in kubernetes example to use localhost
Now that both chrome and firefox understand *.localhost domains we can
remove our suggestion of using localtest.me subdomains.

Also update the brew install instructions now that brew cask install
is deprecated in favor of brew install --cask

My favorite improvement is finding a way to use yaml block labels and
references to reduce the duplication in the ingress config.

I suppose the last important thing to mention about this changes is
that k3d seems to have switched from traefik to nginx for its ingress
loadbalancer. We no longer need the traefik annotation.
2021-01-10 16:05:24 -07:00
b2b868f0be upgrade to wiki@0.22 2021-01-10 15:59:46 -07:00
aa23f2f9b3 version 1.0.6 2020-08-29 12:44:03 -06:00
517e7b3e6a Upgrade to wiki 0.21.2 2020-08-29 12:42:28 -06:00
d5b43b160a add NPM_CONFIG_PREFIX environment variable
Should remove one step from the instructions for developing plugins.
It's a step I consistently miss in my haste to get on with the hacking
and don't notice myself skip.
2020-08-29 12:37:30 -06:00
f94133b505 bump to wiki-client@0.20.1 and wiki-server@0.17.5 2020-04-19 17:35:00 -06:00
60c869a141 Anticipating next wiki release with updates to wiki-client & -server 2020-02-17 09:55:38 -07:00
4 changed files with 29 additions and 90 deletions

View File

@ -5,12 +5,13 @@ RUN apk add --update --no-cache \
git \
jq
WORKDIR "/home/node"
ARG WIKI_PACKAGE=wiki@0.21.0
ARG WIKI_PACKAGE=wiki@0.23
RUN su node -c "npm install -g --prefix . $WIKI_PACKAGE"
RUN su node -c "mkdir -p .wiki"
VOLUME "/home/node/.wiki"
EXPOSE 3000
USER node
ENV PATH="${PATH}:/home/node/bin"
ENV NPM_CONFIG_PREFIX="${HOME}"
ENTRYPOINT ["dumb-init"]
CMD ["wiki", "--farm", "--security_type=friends"]

View File

@ -37,26 +37,32 @@ The last non-breaking revision is 0.52.0 https://github.com/dobbs/farm/tree/0.52
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. For example, when we changed the `USER` directive and
removed the wiki config generation scripts, we bumped the major
version from 0.50.x to 1.0.x.
devops pipeline.
Notes to self:
Testing new images locally:
``` bash
docker build --tag dobbs/farm:1.0.2 .
git tag -am "" '1.0.2'
git push origin '1.0.2'
IMAGE=dobbs/farm:1.0.7-pre-22
docker build --tag $IMAGE .
```
With the local kubernetes example (see [examples/k8s/README.md](./examples/k8s/README.md)):
``` bash
export IMAGE=dobbs/farm:1.0.7-pre-22
docker build --tag $IMAGE .
k3d image import $IMAGE --cluster wiki
cd ./examples/k8s/
perl -pi -e 's{^(\s+image:\s*).*$}{\1 $ENV["IMAGE"]}' wiki.yaml
kubectl apply -f wiki.yaml
```
The repos in Dockerhub and GitHub are configured to automatically build new tags.
# Publish experimental plugins
Invoke Dockerhub and GitHub integration.
``` bash
docker build \
--tag dobbs/farm:0.14.0-frame \
--build-arg WIKI_PACKAGE='dobbs/wiki#frame' \
.
docker push dobbs/farm:0.14.0-frame
git tag -am "" '1.0.2-pre-0217'
git push --atomic origin main '1.0.2-pre-0217'
```

View File

@ -5,7 +5,7 @@ using wiki to drive some learning about kubernetes.
# We're using MacOS, Docker Desktop, and k3d
brew cask install docker
brew install --cask docker
brew install k3d
mkdir -p ~/.wiki-k8s ~/workspace/fedwiki
@ -26,13 +26,16 @@ using wiki to drive some learning about kubernetes.
"secure_cookie": false,
"security_type": "friends",
"wikiDomains": {
"simple.localtest.me": {
"id": "/home/node/.wiki/config.owner.json"
"localhost": {
"id": "/home/node/.wiki/localhost.owner.json"
},
"example.com": {
"id": "/home/node/.wiki/example.com.owner.json"
}
}
}
# example ~/.wiki-k8s/config.owner.json
# example ~/.wiki-k8s/localhost.owner.json
`.friend.secret` must match the `.admin` field from `config.json`
@ -46,8 +49,8 @@ using wiki to drive some learning about kubernetes.
# Deploy Wiki
kubectl apply -f wiki.yaml
kubectl apply -f http://deploy.wiki.do/assets/wiki/wiki.yaml
# Play with the wiki
open http://simple.localtest.me
open http://wiki.localhost

View File

@ -1,71 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: wiki-deployment
spec:
replicas: 1
selector:
matchLabels:
app: wiki
template:
metadata:
labels:
app: wiki
spec:
securityContext:
runAsUser: 1000
runAsGroup: 1000
fsGroup: 1000
containers:
- name: farm
image: dobbs/farm:1.0.1
command: ["wiki"]
ports:
- containerPort: 3000
volumeMounts:
- name: dot-wiki
mountPath: /home/node/.wiki
- name: fedwiki
mountPath: /home/node/fedwiki
volumes:
- name: dot-wiki
hostPath:
path: /macos/.wiki-k8s
- name: fedwiki
hostPath:
path: /macos/fedwiki
---
apiVersion: v1
kind: Service
metadata:
name: wiki-service
spec:
ports:
- name: http
targetPort: 3000
port: 80
selector:
app: wiki
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: simple-wiki
annotations:
kubernetes.io/ingress.class: traefik
spec:
rules:
- host: simple.localtest.me
http:
paths:
- path: /
backend:
serviceName: wiki-service
servicePort: http
- host: "*.simple.localtest.me"
http:
paths:
- path: /
backend:
serviceName: wiki-service
servicePort: http