Skip to content

How to deploy Indy image to Kubernetes #82

Description

@tadayosi

Hi,

After #80, now I want to deploy Indy to a K8s cluster so that it can be used as an alternative to Nexus Repo Manager. I've come up with my own primitive settings (see below) but I'd like to know your recommended settings with optionally more advanced features, such as externalised etc and data volumes.

Could you please add some documentation and/or examples on how to deploy Indy to K8s/OpenShift?

Thank you!

apiVersion: apps/v1
kind: Deployment
metadata:
  name: indy
  namespace: indy
spec:
  selector:
    matchLabels:
      app: indy
  template:
    metadata:
      labels:
        app: indy
    spec:
      containers:
        - name: indy
          image: quay.io/factory2/indy:2.7.2
          ports:
            - name: 8080-tcp
              containerPort: 8080
            - name: 8081-tcp
              containerPort: 8081
          livenessProbe:
            httpGet:
              path: /api/stats/version-info
              port: 8080
            initialDelaySeconds: 30 
            periodSeconds: 3
          readinessProbe:
            httpGet:
              path: /api/stats/version-info
              port: 8080
            initialDelaySeconds: 30
            periodSeconds: 3
          volumeMounts:
            - name: indy-etc
              mountPath: /opt/indy/etc/indy
      initContainers:
        - name: init-etc
          image: busybox
          command: ["sh", "-c"]
          args:
            - cd /tmp && wget -O etc.tar.gz https://github.com/Commonjava/indy/releases/download/indy-parent-2.7.2/indy-launcher-2.7.2-etc.tar.gz && tar -xf etc.tar.gz && mv etc/* /opt/indy/etc/indy/
          volumeMounts:
            - name: indy-etc
              mountPath: /opt/indy/etc/indy
      volumes:
        - name: indy-etc
          emptyDir: {}

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions