You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Aug 1, 2024. It is now read-only.
If you are seeking info on the Vagrant-based devstack, please see https://openedx.atlassian.net/wiki/display/OpenOPS/Running+Devstack.
6
-
This project is meant to replace the traditional Vagrant-based devstack with a multi-container approach driven by [Docker
7
-
Compose](https://docs.docker.com/compose/). It is still in the alpha/beta testing phase. Support for this project is
8
-
limited at the moment, so it may take a while to respond to issues.
5
+
If you are seeking info on the Vagrant-based devstack, please see
6
+
<https://openedx.atlassian.net/wiki/display/OpenOPS/Running+Devstack>. This
7
+
project is meant to replace the traditional Vagrant-based devstack with a
8
+
multi-container approach driven by [Docker Compose][]. It is still in the
9
+
alpha/beta testing phase. Support for this project is limited at the moment, so
10
+
it may take a while to respond to issues.
11
+
12
+
You should run any Make targets described below on your local machine, _not_
13
+
from within a VM.
9
14
10
-
You should run any Make targets described below on your local machine, _not_ from within a VM.
11
15
12
16
## Prerequisites
13
17
14
-
This project was developed and tested using **Docker 1.13+**. If you are using OS X, please use [Docker for Mac](https://docs.docker.com/docker-for-mac/).
15
-
Previous Mac-based tools (e.g. boot2docker) are not supported.
18
+
This project was developed and tested using **Docker 1.13+**. If you are using
19
+
macOS, please use [Docker for Mac][]. Previous Mac-based tools (e.g.
20
+
boot2docker) are not supported.
16
21
17
-
[Docker for Windows](https://docs.docker.com/docker-for-windows/) may work but has not been tested and is _not supported_.
22
+
[Docker for Windows][] may work but has not been tested and is _not supported_.
18
23
19
24
20
25
## Getting Started
21
26
22
-
All of the services can be run by following the steps below. Note that since we are running many containers, you should
23
-
configure Docker with a sufficient amount of resources. Our testing found that [configuring Docker for Mac](https://docs.docker.com/docker-for-mac/#/advanced)
24
-
with 2 CPUs and 4GB of memory works well.
27
+
All of the services can be run by following the steps below. Note that since we
28
+
are running many containers, you should configure Docker with a sufficient
29
+
amount of resources. Our testing found that [configuring Docker for Mac][] with
30
+
2 CPUs and 4GB of memory works well.
25
31
26
-
1. The Docker Compose file mounts a host volume for each service's executing code. The host directory is expected to be
27
-
a sibling of this directory. For example, if this repo is cloned to `~/workspace/devstack`, host volumes will be
28
-
expected in `~/workspace/course-discovery`, `~/workspace/ecommerce`, etc. These repos can be cloned with the command
29
-
below.
32
+
1. The Docker Compose file mounts a host volume for each service's executing
33
+
code. The host directory is expected to be a sibling of this directory. For
34
+
example, if this repo is cloned to `~/workspace/devstack`, host volumes
35
+
will be expected in `~/workspace/course-discovery`,
36
+
`~/workspace/ecommerce`, etc. These repos can be cloned with the command
37
+
below.
30
38
31
-
```
32
-
$ make clone
33
-
```
39
+
```sh
40
+
make clone
41
+
```
34
42
35
-
2. Run the provision command, if you haven't already, to configure the various services with superusers (for
36
-
development without the auth service) and tenants (for multi-tenancy).
43
+
2. Run the provision command, if you haven't already, to configure the various
44
+
services with superusers (for development without the auth service) and
45
+
tenants (for multi-tenancy).
37
46
38
-
The username and password for the superusers are both "edx". You can access the services directly via Django admin
39
-
at the `/admin/` path, or login via single sign-on at `/login/`.
47
+
The username and password for the superusers are both "edx". You can access
48
+
the services directly via Django admin at the `/admin/` path, or login via
49
+
single sign-on at `/login/`.
40
50
41
-
```
42
-
$ make devstack.provision
43
-
```
51
+
```sh
52
+
make devstack.provision
53
+
```
44
54
45
-
3. Start the services. By default this command will use host directories for source code. This is known to be slow on
46
-
macOS. macOS users should follow the steps below for Docker Sync to avoid this performance hit.
55
+
3. Start the services. By default this command will use host directories for
56
+
source code. This is known to be slow on macOS. macOS users should follow
57
+
the steps below for Docker Sync to avoid this performance hit.
47
58
48
-
```
49
-
$ make devstack.start
50
-
```
59
+
```sh
60
+
make devstack.start
61
+
```
51
62
52
-
After the services have started, if you need shell access to one of the services, run `make devstack.open.<service>`.
53
-
For example to access the Catalog/Course Discovery Service, you can run:
63
+
After the services have started, if you need shell access to one of the
64
+
services, run `make devstack.open.<service>`. For example to access the
65
+
Catalog/Course Discovery Service, you can run:
54
66
55
-
```
56
-
$ make devstack.open.discovery
67
+
```sh
68
+
make devstack.open.discovery
57
69
```
58
70
59
71
### Docker Sync
60
72
61
-
Docker for Mac has known filesystem issues that significantly decrease performance. In order to mitigate these issues,
62
-
we use [Docker Sync](https://github.com/EugenMayer/docker-sync/wiki) to synchronize file data from the host machine to
63
-
the containers. Follow the steps below to setup Docker Sync.
73
+
Docker for Mac has known filesystem issues that significantly decrease
74
+
performance. In order to mitigate these issues, we use [Docker Sync][] to
75
+
synchronize file data from the host machine to the containers. Follow the steps
76
+
below to setup Docker Sync.
64
77
65
-
1. Ensure all containers are stopped.
66
-
```
67
-
$ make devstack.stop
68
-
```
78
+
1. Ensure all containers are stopped.
69
79
70
-
2. Follow the installation instructions at https://github.com/EugenMayer/docker-sync/wiki to install Docker Sync.
80
+
```sh
81
+
make devstack.stop
82
+
```
71
83
72
-
3. Run Docker Sync and devstack.
73
-
```
74
-
$ make devstack.start.sync
75
-
```
84
+
2. Follow the [Docker Sync installation instructions][].
85
+
86
+
3. Run Docker Sync and devstack.
87
+
88
+
```sh
89
+
make devstack.start.sync
90
+
```
76
91
77
92
78
93
## Usernames and Passwords
79
94
80
95
The provisioning script creates a Django superuser for every service.
0 commit comments