I am trying to run a self hosted runner using Docker on GKE cluster deployment.
The following command is migrated to k8s deployment(values are dummy):
docker container run -it -v /data:/data -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker/containers:/var/lib/docker/containers:ro -e ACCOUNT_UUID={87642016-abcd-xyze-b27d-1c58450bace4} -e REPOSITORY_UUID={c0c78c96-e5e7-1234-abcd-c337d17dd794} -e RUNNER_UUID={testinge-55c3-55d1-8fe5-15fbcbc06301} -e RUNTIME_PREREQUISITES_ENABLED=true -e OAUTH_CLIENT_ID=J3X0AgzCqjNLfuqeOGAOATAOVTdE7Zr -e OAUTH_CLIENT_SECRET=ATOABGamRkviXzw12345jehreHHMMc27gMGcQCGfhpOz-FJNbDb80eaRJTqjhKhHOX7Q6A2F0F185C6 -e WORKING_DIRECTORY=/data --name runner-e5e949ea-55c3-55d1-8fe5-15fbcbc06301 docker-public.packages.atlassian.com/sox/atlassian/bitbucket-pipelines-runner
apiVersion: apps/v1
kind: Deployment
metadata:
name: bitbucket-runner
namespace: duploservices-np-apps
labels:
app: bitbucket-runner
tenantname: duploservices-np-apps
spec:
replicas: 1
selector:
matchLabels:
app: bitbucket-runner
tenantname: duploservices-np-apps
template:
metadata:
labels:
app: bitbucket-runner
tenantname: duploservices-np-apps
spec:
serviceAccountName: duploservices-np-apps-app-user
nodeSelector:
allocationtags: apps-general
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: tenantname
operator: In
values:
- duploservices-np-apps
- duploservices-npuse1
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 1
podAffinityTerm:
labelSelector:
matchLabels:
app: bitbucket-runner
topologyKey: kubernetes.io/hostname
containers:
- name: bitbucket-runner
image: docker-public.packages.atlassian.com/sox/atlassian/bitbucket-pipelines-runner:latest
imagePullPolicy: Always
envFrom:
- secretRef:
name: bitbucket-runner
env:
- name: DOCKER_IMAGE
value: docker-public.packages.atlassian.com/sox/atlassian/bitbucket-pipelines-runner:latest
securityContext:
runAsUser: 0
volumeMounts:
- name: bitbucket-runner
mountPath: /tmp
- name: docker-containers
mountPath: /var/lib/docker/containers
- name: docker-sock
mountPath: /var/run/docker.sock
volumes:
- name: bitbucket-runner
persistentVolumeClaim:
claimName: bitbucket-runner
- name: docker-containers
hostPath:
path: /var/lib/docker/containers
type: Directory
- name: docker-sock
hostPath:
path: /var/run/docker.sock
type: Socket
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 1
maxSurge: 1
NAME="Container-Optimized OS"
ID=cos
PRETTY_NAME="Container-Optimized OS from Google"
HOME_URL="https://cloud.google.com/container-optimized-os/docs"
BUG_REPORT_URL="https://cloud.google.com/container-optimized-os/docs/resources/support-policy#contact_us"
KERNEL_COMMIT_ID=e55bf22ffd8898012c8f3265949ead1ab34ed684
GOOGLE_METRICS_PRODUCT_ID=26
GOOGLE_CRASH_ID=Lakitu
VERSION=113
VERSION_ID=113
BUILD_ID=18244.291.9
[2025-04-15 06:31:21,402] Looking for auth in config for image Image{name=docker-public.packages.atlassian.com/sox/atlassian/bitbucket-pipelines-auth-proxy:prod-stable, runAsUser=None, auth=None} and found auth null
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99)