Skip to content

Instantly share code, notes, and snippets.

@matthewpalmer
Created October 22, 2018 00:56
Show Gist options
  • Select an option

  • Save matthewpalmer/0f213028473546b14fd75b7ebf801115 to your computer and use it in GitHub Desktop.

Select an option

Save matthewpalmer/0f213028473546b14fd75b7ebf801115 to your computer and use it in GitHub Desktop.

Revisions

  1. matthewpalmer created this gist Oct 22, 2018.
    47 changes: 47 additions & 0 deletions nfs-server.yaml
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,47 @@
    # Note - an NFS server isn't really a Kubernetes
    # concept. We're just creating it in Kubernetes
    # for illustration and convenience. In practice,
    # it might be run in some other system.

    # Create a service to expose the NFS server
    # to pods inside the cluster.

    kind: Service
    apiVersion: v1
    metadata:
    name: nfs-service
    spec:
    selector:
    role: nfs
    ports:
    # Open the ports required by the NFS server
    # Port 2049 for TCP
    - name: tcp-2049
    port: 2049
    protocol: TCP

    # Port 111 for UDP
    - name: udp-111
    port: 111
    protocol: UDP

    ---

    # Run the NFS server image in a pod that is
    # exposed by the service.

    kind: Pod
    apiVersion: v1
    metadata:
    name: nfs-server-pod
    labels:
    role: nfs
    spec:
    containers:
    - name: nfs-server-container
    image: cpuguy83/nfs-server
    securityContext:
    privileged: true
    args:
    # Pass the paths to share to the Docker image
    - /exports