We propose a data-driven method to solve a stochastic optimal power flow (OPF) problem based on limited information about forecast error distributions. The objective is to determine power schedules for controllable devices in a power network to balance operation cost and conditional value-at-risk (CVaR) of device and network constraint violations. These decisions include scheduled power output adjustments and reserve policies, which specify planned reactions to forecast errors in order to accommodate fluctuating renewable energy sources. Instead of assuming the uncertainties across the networks follow prescribed probability distributions, we assume the distributions are only observable through a finite training dataset. By utilizing the Wasserstein metric to quantify differences between the empirical data-based distribution and the real data-generating distribution, we formulate a distributionally robust optimization OPF problem to search for power schedules and reserve policies that are robust to sampling errors inherent in the dataset. A simple numerical example illustrates inherent tradeoffs between operation cost and risk of constraint violation, and we show how our proposed method offers a data-driven framework to balance these objectives.