github.com/pachyderm/pachyderm@v1.13.4/doc/docs/1.9.x/getting_started/local_installation.md (about)

     1  # Local Installation
     2  
     3  This guide walks you through the steps to install Pachyderm
     4  on macOS®, Linux®, or Microsoft® Windows®. Local installation helps you to learn
     5  some of the Pachyderm basics and is not designed to be a production
     6  environment.
     7  
     8  !!! note
     9      Pachyderm supports the Docker runtime only. If you want to
    10      deploy Pachyderm on a system that uses another container runtime,
    11      ask for advice in our [Slack channel](http://slack.pachyderm.io/).
    12  
    13  ## Prerequisites
    14  
    15  Before you can deploy Pachyderm, make sure you have the following
    16  programs installed on your computer:
    17  
    18  - [Minikube](#using-minikube)
    19  - Oracle® VirtualBox™ or [Docker Desktop (v18.06+)](#docker-desktop)
    20  - [Pachyderm Command Line Interface](#install-pachctl)
    21  
    22  If you want to install Pachyderm on Windows, follow the instructions in
    23  [Deploy Pachyderm on Windows](wsl-deploy.md).
    24  
    25  
    26  ### Using Minikube
    27  
    28  On your local machine, you can run Pachyderm in a minikube virtual machine.
    29  Minikube is a tool that creates a single-node Kubernetes cluster. This limited
    30  installation is sufficient to try basic Pachyderm functionality and complete
    31  the Beginner Tutorial.
    32  
    33  To configure Minikube, follow these steps:
    34  
    35  1. Install minikube and VirtualBox in your operating system as described in
    36  the
    37  [Kubernetes documentation](http://kubernetes.io/docs/getting-started-guides/minikube).
    38  1. [Install `kubectl`](https://kubernetes.io/docs/tasks/tools/install-kubectl/).
    39  1. Start `minikube`:
    40  
    41     ```shell
    42     minikube start
    43     ```
    44  
    45  !!! note
    46      Any time you want to stop and restart Pachyderm, run `minikube delete`
    47      and `minikube start`. Minikube is not meant to be a production environment
    48      and does not handle being restarted well without a full wipe.
    49  
    50  ### Docker Desktop
    51  
    52  If you are using Minikube, skip this section and proceed to [Install pachctl](#install-pachctl)
    53  
    54  You can use Docker Desktop instead of Minikube on macOS or Linux
    55  by following these steps:
    56  
    57  1. In the Docker Desktop settings, verify that Kubernetes is enabled:
    58  
    59     ![Docker Desktop Enable K8s](../assets/images/Docker_Desktop_Enable_k8s.png)
    60  
    61  1. From the command prompt, confirm that Kubernetes is running:
    62  
    63     ```shell
    64     $ kubectl get all
    65     NAME                 TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
    66     service/kubernetes   ClusterIP   10.96.0.1    <none>        443/TCP   56d
    67     ```
    68  
    69     * To reset your Kubernetes cluster that runs on Docker Desktop, click
    70     the **Reset** button in the **Preferences** sub-menu.
    71  
    72     ![Reset K8s](../assets/images/DFD_Reset_K8s.png)
    73  
    74  ### Install `pachctl`
    75  
    76  `pachctl` is a command-line utility that you can use to interact
    77  with a Pachyderm cluster.
    78  
    79  To deploy Pachyderm locally, you need
    80  to have pachctl installed on your machine by following these steps:
    81  
    82  1. Run the corresponding steps for your operating system:
    83  
    84     * For macOS, run:
    85  
    86       ```shell
    87       $ brew tap pachyderm/tap && brew install pachyderm/tap/pachctl@1.9
    88       ```
    89  
    90     * For a Debian-based Linux 64-bit or Windows 10 or later running on
    91     WSL:
    92  
    93       ```shell
    94       $ curl -o /tmp/pachctl.deb -L https://github.com/pachyderm/pachyderm/releases/download/v1.9.11/pachctl_1.9.11_amd64.deb && sudo dpkg -i /tmp/pachctl.deb
    95       ```
    96  
    97     * For all other Linux flavors:
    98  
    99       ```shell
   100       $ curl -o /tmp/pachctl.tar.gz -L https://github.com/pachyderm/pachyderm/releases/download/v1.9.11/pachctl_1.9.11_linux_amd64.tar.gz && tar -xvf /tmp/pachctl.tar.gz -C /tmp && sudo cp /tmp/pachctl_1.9.11_linux_amd64/pachctl /usr/local/bin
   101       ```
   102  
   103  1. Verify that installation was successful by running `pachctl version --client-only`:
   104  
   105     ```shell
   106     $ pachctl version --client-only
   107     COMPONENT           VERSION
   108     pachctl             1.9.11
   109     ```
   110  
   111     If you run `pachctl version` without `--client-only`, the command times
   112     out. This is expected behavior because `pachd` is not yet running.
   113  
   114  ## Deploy Pachyderm
   115  
   116  After you configure all the [Prerequisites](#prerequisites),
   117  deploy Pachyderm by following these steps:
   118  
   119  * For macOS or Linux, run:
   120  
   121     ```shell
   122     $ pachctl deploy local
   123     ```
   124  
   125     This command generates a Pachyderm manifest and deploys Pachyderm on
   126     Kubernetes.
   127  
   128  * For Windows:
   129  
   130    1. Start WSL.
   131    1. In WSL, run:
   132  
   133       ```shell
   134       $ pachctl deploy local --dry-run > pachyderm.json
   135       ```
   136  
   137    1. Copy the `pachyderm.json` file into your Pachyderm directory.
   138    1. From the same directory, run:
   139  
   140       ```shell
   141       kubectl create -f .\pachyderm.json
   142       ```
   143  
   144    Because Pachyderm needs to pull the Pachyderm Docker image
   145    from DockerHub, it might take a few minutes for the Pachyderm pods status
   146    to change to `Running`.
   147  
   148  1. Check the status of the Pachyderm pods by periodically
   149  running `kubectl get pods`. When Pachyderm is ready for use,
   150  all Pachyderm pods must be in the **Running** status.
   151  
   152  
   153     ```shell
   154     $ kubectl get pods
   155     NAME                     READY     STATUS    RESTARTS   AGE
   156     dash-6c9dc97d9c-vb972    2/2       Running   0          6m
   157     etcd-7dbb489f44-9v5jj    1/1       Running   0          6m
   158     pachd-6c878bbc4c-f2h2c   1/1       Running   0          6m
   159     ```
   160  
   161     If you see a few restarts on the `pachd` nodes, that means that
   162     Kubernetes tried to bring up those pods before `etcd` was ready. Therefore,
   163     Kubernetes restarted those pods. You can safely ignore that message.
   164  
   165  1. Run `pachctl version` to verify that `pachd` has been deployed.
   166  
   167     ```shell
   168     $ pachctl version
   169     COMPONENT           VERSION
   170     pachctl             1.9.11
   171     pachd               1.9.11
   172     ```
   173  
   174  1. Open a new terminal window.
   175  
   176  1. Use port forwarding to access the Pachyderm dashboard.
   177  
   178     ```shell
   179     $ pachctl port-forward
   180     ```
   181  
   182     This command runs continuosly and does not exit unless you interrupt it.
   183  
   184  1. Alternatively, you can set up Pachyderm to directly connect to
   185  the Minikube instance:
   186  
   187     1. Get your Minikube IP address:
   188  
   189        ```shell
   190        $ minikube ip
   191        ```
   192  
   193     1. Configure Pachyderm to connect directly to the Minikube instance:
   194  
   195        ```shell
   196       $ pachctl config update context `pachctl config get active-context` --pachd-address=`minikube ip`:30650
   197        ```
   198  
   199  ## Next Steps
   200  
   201  After you install and configure Pachyderm,
   202  continue exploring Pachyderm:
   203  
   204  * Complete the [Beginner Tutorial](./beginner_tutorial.md)
   205  to learn the basics of Pachyderm, such as adding data and building
   206  analysis pipelines.
   207  
   208  * Explore the Pachyderm Dashboard.
   209  By default, Pachyderm deploys the Pachyderm Enterprise dashboard. You can
   210  use a FREE trial token to experiment with the dashboard. Point your
   211  browser to port `30080` on your minikube IP.
   212  Alternatively, if you cannot connect directly, enable port forwarding
   213  by running `pachctl port-forward`, and then point your browser to
   214  `localhost:30080`.
   215  
   216  !!! note "See Also:"
   217      [General Troubleshooting](../troubleshooting/general_troubleshooting.md)