1
1
# This manifest defines:
2
- # - A PersistentVolumeClaim for shared storage between containers and vscode (or another IDE icoul)
3
- # - A Pod running Jekyll, mounting the shared storage
2
+ # - A Pod running Jekyll
3
+ # - A bind-mounted volume from the host system for sharing content with the container
4
+ # - SELinux relabeling to ensure Podman can access the bind mount securely
4
5
5
- # Jekyll Pod
6
6
apiVersion : v1
7
7
kind : Pod
8
8
metadata :
9
9
name : jekyll
10
+ annotations :
11
+ # This annotation is required by Podman to apply SELinux relabeling to the bind mount path.
12
+ # It ensures the container can access the host directory securely under SELinux policies.
13
+ # IMPORTANT: Update this path if you clone this repo and use a different local directory.
14
+ io.containers.selinux.mount : " /home/jmk/Repositories/spectral-jekyll-theme"
10
15
spec :
11
16
volumes :
12
- - name : jekyll-shared
17
+ - name : jekyll-shared-spectral
13
18
hostPath :
14
19
path : /home/jmk/Repositories/spectral-jekyll-theme
15
20
type : Directory
16
- selinuxRelabel : " shared"
21
+ # This tells Podman to apply a shared SELinux label to the directory.
22
+ # Use "shared" if multiple containers need access to the same label.
23
+ # Use "private" if you want isolation.
24
+ selinuxRelabel : " private"
17
25
containers :
18
26
- name : jekyll
19
27
image : ghcr.io/bretfisher/jekyll-serve:latest
20
28
ports :
21
29
- containerPort : 4000
22
30
hostPort : 4000
31
+ # NOTE: If running multiple Jekyll pods, make sure each uses a unique hostPort
32
+ # to avoid conflicts (e.g., 4001, 4002, etc.)
23
33
volumeMounts :
24
34
- mountPath : /site
25
- name : jekyll-shared
35
+ name : jekyll-shared-spectral
36
+ # This mounts the host directory into the container at /site
37
+ # Jekyll will serve content from this path
0 commit comments