This is source code for my personal home page.
It is deployed as docker image and it runs by default on port 8080.
Currently tested on python 3.11.4+
- Pull submodules:
git submodule init
git submodule update
-
setup https
a. generate certificate (cert.pem, key.pem), for example (self-signed):
openssl req -x509 -newkey rsa:4096 -nodes -out cert.pem -keyout key.pem -days 365
b. place in app directory:
app/cert.pem app/key.pem
python HomePage.py start # optionally add "--ssl_mode=http"
Make sure to check #Setup first
Load image from docker-hub:
docker pull zostaw/multiarch-home-page:latest
docker compose up -d
Or build image yourself:
IMAGE_NAME="zostaw/multiarch-home-page"
IMAGE_TAG="latest"
docker build -t $IMAGE_NAME:$IMAGE_TAG .
docker compose up -d
-
create pod-home-page.yaml
apiVersion: v1 kind: Pod metadata: name: home-page namespace: default labels: app.kubernetes.io/name: home-page spec: containers: - name: home-page image: $IMAGE_NAME:$IMAGE_TAG imagePullPolicy: Always ports: - containerPort: 8080
-
create service-home-page.yaml to expose pod outside cluster
apiVersion: v1 kind: Service metadata: name: home-page namespace: default labels: app.kubernetes.io/name: home-page spec: selector: app.kubernetes.io/name: home-page type: NodePort ports: - port: 8080 targetPort: 8080 nodePort: <your port>