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
There are two recommended ways to deploy Sourcegraph:
5
+
This repository is the deployment reference for [deploying Sourcegraph with Docker Compose](https://docs.sourcegraph.com/admin/install/docker-compose).
> 🚨 IMPORTANT: When upgrading Sourcegraph, please check [upgrading docs](https://docs.sourcegraph.com/admin/updates/docker_compose) to check if any manual migrations are necessary.
8
+
>
9
+
> The `master` branch tracks development. Use the branch of this repository corresponding to the
10
+
> version of Sourcegraph you wish to deploy, e.g. `git checkout 3.19`.
9
11
10
-
But what if your organization wants a multi-machine deployment without using Kubernetes? What if you use a different container management platform, for example? This project aims to solve that, by providing a pure-Docker deployment option.
12
+
For product and [pricing](https://about.sourcegraph.com/pricing/) information, visit
13
+
[about.sourcegraph.com](https://about.sourcegraph.com) or [contact
14
+
us](https://about.sourcegraph.com/contact/sales) for more information. If you're just starting out,
15
+
we recommend running Sourcegraph as a [single Docker
16
+
container](https://docs.sourcegraph.com/#quickstart-guide) or using [Docker
17
+
Compose](https://docs.sourcegraph.com/admin/install/docker-compose). Migrating to Sourcegraph on
18
+
Kubernetes is easy later.
11
19
12
-
The goal is that anyone using a container management platform other than Kubernetes (Netflix's [Titus](https://netflix.github.io/titus/), Apache's [Mesos](http://mesos.apache.org/documentation/latest/docker-containerizer/), etc.) would be able to use this repository as a reference for how to deploy Sourcegraph.
20
+
## Is Docker Compose the right deployment type for me?
13
21
14
-
## Deploying
22
+
Please see [our docs](https://docs.sourcegraph.com/admin/install) for comparisons of deployment types and our resource estimator.
15
23
16
-
First clone the repository, then:
24
+
## Contributing
17
25
18
-
```bash
19
-
./deploy.sh
20
-
```
26
+
We've made our deployment configurations open source to better serve our customers' needs. If there is anything we can do to make deploying Sourcegraph easier just [open an issue (in sourcegraph/sourcegraph)](https://github.com/sourcegraph/sourcegraph/issues/new?assignees=&labels=deploy-sourcegraph-docker&title=%5Bdeploy-sourcegraph-docker%5D) or a pull request and we will respond promptly!
21
27
22
-
Visit http://localhost:3080 to visit the running Sourcegraph instance!
23
-
24
-
## Tearing down the deployment
25
-
26
-
```bash
27
-
./teardown.sh
28
-
```
29
-
30
-
## System topology
31
-
32
-
To understand the system topology:
33
-
34
-
1. Look at `deploy.sh` to get an overview of services.
35
-
2. Every service (`deploy-*.sh`) has documentation inline indicating:
36
-
- What the service does / provides.
37
-
- What ports the service exposes.
38
-
- What other services it talks to (see environment variables).
39
-
40
-
## Service system requirements
41
-
42
-
Every service (`deploy-*.sh`) documents inline what the system requirements are (CPU/Memory/Disk allocation). For example, [the frontend service](https://github.com/sourcegraph/deploy-sourcegraph-docker/blob/f01b97a397138dd76e5f5ed45b2574b9a2e70cd1/deploy-frontend.sh#L6-L9).
43
-
44
-
## Scaling / replicas
45
-
46
-
To scale the cluster deployment, you will need to:
47
-
48
-
1. Deploy more instances of `gitserver`, `indexed-search`, `searcher` and `symbols` services as desired.
49
-
2.[Configure the `frontend` and `frontend-internal` to communicate with the new instances.](https://github.com/sourcegraph/deploy-sourcegraph-docker/blob/f01b97a397138dd76e5f5ed45b2574b9a2e70cd1/deploy-frontend.sh#L31-L34)
50
-
3. You're done! You do not need to configure or restart any other services.
51
-
52
-
## Metrics and Tracing
53
-
54
-
This deployment comes with metrics and tracing built-in. See [metrics and tracing](metrics-and-tracing.md) for details.
55
-
56
-
## Configuring HTTPS
57
-
58
-
See https://docs.sourcegraph.com/admin/nginx#nginx-for-other-sourcegraph-clusters-e-g-pure-docker
59
-
60
-
## Configuring SSH cloning
61
-
62
-
1. Ensure your **Site admin** > **External services** code host configuration is configured to use SSH. For example, by setting the [`gitURLType`](https://docs.sourcegraph.com/admin/site_config/all#giturltype-string-enum) field to `"ssh"`. You may still need to configure an access token or other codehost authentication method in order for Sourcegraph to discover your repositories.
63
-
64
-
Alternatively, you may use the `OTHER` codehost type under **External services**, which allows you to directly specify Git repository URLs for cloning.
65
-
66
-
2. Provide your `gitserver` instances with your SSH / Git configuration (usually just `.ssh/id_rsa`, `.ssh/id_rsa.pub`, and `.ssh/known_hosts` -- but you can also provide other files like `.netrc`, `.gitconfig`, etc. if needed) by mounting it into the `sourcegraph` users home directory in the `gitserver` containers. For example, by adding the following flag:
All future Git cloning operations will use the credentials configured there.
73
-
74
-
If you wish, you can test that cloning with your configuration is working by performing the clone in a gitserver container shell, e.g. first acquire shell access:
75
-
76
-
```
77
-
$ docker exec -it gitserver-0 sh
78
-
```
28
+
## Questions & Issues
79
29
80
-
Then try cloning the repository:
30
+
[Open an issue (in sourcegraph/sourcegraph)](https://github.com/sourcegraph/sourcegraph/issues/new?assignees=&labels=deploy-sourcegraph&template=deploy-sourcegraph.md&title=%5Bdeploy-sourcegraph%5D) or contact us (support@sourcegraph.com), we are happy to help!
[Open an issue (in sourcegraph/sourcegraph)](https://github.com/sourcegraph/sourcegraph/issues/new?assignees=&labels=deploy-sourcegraph-docker&template=deploy-sourcegraph-docker.md&title=%5Bdeploy-sourcegraph-docker%5D) or contact us (support@sourcegraph.com), we are happy to help!
34
+
What if your organization wants a multi-machine deployment without using Kubernetes?
35
+
What if you use a different container management platform, for example?
36
+
Anyone using a container management platform other than Kubernetes (Netflix's [Titus](https://netflix.github.io/titus/), Apache's [Mesos](http://mesos.apache.org/documentation/latest/docker-containerizer/), etc.) can use our [Pure-Docker Sourcegraph cluster deployment reference](./pure-docker/README.md) to deploy Sourcegraph.
Copy file name to clipboardExpand all lines: RELEASING.md
+13-4Lines changed: 13 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,8 @@
1
1
# Release guide
2
2
3
+
**This is the guide for releasing the [Pure-Docker Sourcegraph deployment reference](./pure-docker/README.md).**
4
+
The docker-compose release is done entirely via the [Sourcegraph release tool](https://about.sourcegraph.com/handbook/engineering/distribution/tools/release).
5
+
3
6
## Branching/tagging scheme
4
7
5
8
Just like deploy-sourcegraph, we use version branches and version tags. We _additionally_ have a second set which is customer-replication branches and version tags:
@@ -68,10 +71,10 @@ Pretend `3.8` was the last version of pure-docker release (look for the latest `
68
71
69
72
```sh
70
73
# Checkout the current pure-docker release branch
71
-
git checkout 3.8-customer-replica
74
+
git checkout 3.8-customer-replica
72
75
73
76
# Create the new pure-docker release branch
74
-
git checkout -B 3.9-customer-replica
77
+
git checkout -B 3.9-customer-replica
75
78
76
79
# Merge the publish-3.9 branch, which will have been created by the release tool, into the pure-docker release branch.
77
80
git merge publish-3.9
@@ -95,9 +98,15 @@ At this point you should evaluate the `git status` output as well as all the cha
95
98
During this process you will run into two merge conflicts:
96
99
97
100
- Do not commit: `deploy-caddy.sh` or changes related to it, as `deploy-apache.sh` is used here.
98
-
- Do not commit: changes to `deploy-pgsql.sh`, as Postgres 9.6 is used here.
Sourcegraph will then run in the background and across server restarts.
17
-
18
-
Notes:
19
-
20
-
- The `docker-compose.yaml` file currently depends on configuration files which live in the repository, as such you must have the repository cloned onto your server.
21
-
- Data for all services will be stored as docker volumes.
22
-
- Use `docker ps` to inspect the Sourcegraph containers, and `docker-compose down` to teardown the deployment.
23
-
24
-
## Upgrading
25
-
26
-
Always refer to https://docs.sourcegraph.com/admin/updates/docker_compose prior to upgrading, as it will document any manual steps you may need to take in order to upgrade smoothly.
5
+
To learn more about deploying, configuring, and upgrading a Sourcegraph with Docker Compose installation, please refer to our documentation: [Sourcegraph with Docker Compose](https://docs.sourcegraph.com/admin/install/docker-compose)
0 commit comments