Deployment
You can deploy the ghcr.io/orter-rs/worker:latest Docker image using Docker, Docker Compose, or Kubernetes. Below are example setups for each method.
Docker CLI
To run the worker directly with Docker:
docker run -d \
--name orter-worker \
-e API_KEY=$API_KEY \
-p 6969:6969 \
-p 6666:6666/udp \
-p 8082:8082 \
ghcr.io/orter-rs/worker:latestUpdate the API_KEY and port mappings as needed for your environment.
Docker Compose
To manage configuration and dependencies, use Docker Compose. Here is an example docker-compose.yml using API_KEY:
version: '3.8'
services:
worker:
image: ghcr.io/orter-rs/worker:latest
environment:
- API_KEY=<MYAPIKEY>
ports:
- "6969:6969"
- "6666:6666/udp"
- "8082:8082"
restart: unless-stoppedStart the service with:
docker compose up -dKubernetes
To deploy on Kubernetes, use the following basic Deployment and Service manifest with API_KEY:
apiVersion: apps/v1
kind: Deployment
metadata:
name: orter-worker
spec:
replicas: 1
selector:
matchLabels:
app: orter-worker
template:
metadata:
labels:
app: orter-worker
spec:
containers:
- name: worker
image: ghcr.io/orter-rs/worker:latest
env:
- name: API_KEY
value: "<MYAPIKEY>"
ports:
- containerPort: 6969
protocol: TCP
- containerPort: 6666
protocol: UDP
- containerPort: 8082
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: orter-worker
spec:
selector:
app: orter-worker
ports:
- protocol: TCP
port: 6969
targetPort: 6969
- protocol: UDP
port: 6666
targetPort: 6666
- protocol: TCP
port: 8082
targetPort: 8082
type: ClusterIPApply the manifest with:
kubectl apply -f deployment.yaml