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