2022-03-29 15:09:53 +00:00
---
stage: Create
group: Source Code
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments
---
2020-12-02 15:09:37 +00:00
# GitLab Workhorse
GitLab Workhorse is a smart reverse proxy for GitLab. It handles
"large" HTTP requests such as file downloads, file uploads, Git
push/pull and Git archive downloads.
Workhorse itself is not a feature, but there are [several features in
GitLab](doc/architecture/gitlab_features.md) that would not work efficiently without Workhorse.
2020-12-09 03:09:24 +00:00
## Canonical source
2021-03-11 18:09:23 +00:00
The canonical source for Workhorse is
2022-03-29 15:09:53 +00:00
[`gitlab-org/gitlab/workhorse` ](https://gitlab.com/gitlab-org/gitlab/tree/master/workhorse ).
Prior to [epic #4826 ](https://gitlab.com/groups/gitlab-org/-/epics/4826 ), it was
[`gitlab-org/gitlab-workhorse` ](https://gitlab.com/gitlab-org/gitlab-workhorse/tree/master ),
2021-03-11 18:09:23 +00:00
but that repository is no longer used for development.
2020-12-09 03:09:24 +00:00
2020-12-02 15:09:37 +00:00
## Documentation
Workhorse documentation is available in the [`doc` folder of this repository ](doc/ ).
2022-03-29 15:09:53 +00:00
- Architectural overview
- [GitLab features that rely on Workhorse ](doc/architecture/gitlab_features.md )
- [Websocket channel support ](doc/architecture/channel.md )
- Operating Workhorse
- [Source installation ](doc/operations/install.md )
- [Workhorse configuration ](doc/operations/configuration.md )
- [Contributing ](CONTRIBUTING.md )
- [Adding new features ](doc/development/new_features.md )
- [Testing your code ](doc/development/tests.md )
2020-12-02 15:09:37 +00:00
## License
This code is distributed under the MIT license, see the [LICENSE ](LICENSE ) file.