Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
G
gitlab-runner
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Lars Seipel
gitlab-runner
Commits
07e82d5b
Unverified
Commit
07e82d5b
authored
7 years ago
by
Mads R. Havmand
Committed by
Achilleas Pipinellis
7 years ago
Browse files
Options
Downloads
Patches
Plain Diff
Initial attempt at fixing issues-2994
parent
9971c3e2
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
docs/install/docker-registry-and-cache-server.md
+72
-0
72 additions, 0 deletions
docs/install/docker-registry-and-cache-server.md
with
72 additions
and
0 deletions
docs/install/docker-registry-and-cache-server.md
0 → 100644
+
72
−
0
View file @
07e82d5b
# Prepare the Docker Registry and Cache Server
To speedup the builds we advise to setup a personal Docker registry server
working in proxy mode. A cache server is also recommended.
## Install Docker Registry
>**Note:**
Read more in
[
Distributed registry mirroring
][
registry
]
.
1.
Login to a dedicated machine where Docker registry proxy will be running
2.
Make sure that Docker Engine is installed on this machine
3.
Create a new Docker registry:
```bash
docker run -d -p 6000:5000 \
-e REGISTRY_PROXY_REMOTEURL=https://registry-1.docker.io \
--restart always \
--name registry registry:2
```
You can modify the port number (`6000`) to expose Docker registry on a
different port.
4.
Check the IP address of the server:
```bash
hostname --ip-address
```
You should preferably choose the private networking IP address. The private
networking is usually the fastest solution for internal communication
between machines of a single provider (DigitalOcean, AWS, Azure, etc,)
Usually the private networking is also not accounted to your monthly
bandwidth limit.
5.
Docker registry will be accessible under
`MY_REGISTRY_IP:6000`
.
## Install the cache server
>**Note:**
You can use any other S3-compatible server, including
[
Amazon S3
][
S3
]
. Read
more in
[
Distributed runners caching
][
caching
]
.
1.
Login to a dedicated machine where the cache server will be running
1.
Make sure that Docker Engine is installed on that machine
1.
Start [minio], a simple S3-compatible server written in Go:
```bash
docker run -it --restart always -p 9005:9000 \
-v /.minio:/root/.minio -v /export:/export \
--name minio \
minio/minio:latest server /export
```
You can modify the port `9005` to expose the cache server on different port.
1.
Check the IP address of the server:
```bash
hostname --ip-address
```
1.
Your cache server will be available at
`MY_CACHE_IP:9005`
1.
Read the Access and Secret Key of minio with:
`sudo cat /.minio/config.json`
1.
Create a bucket that will be used by the Runner:
`sudo mkdir /export/runner`
.
`runner`
is the name of the bucket in that case. If you choose a different
bucket then it will be different
1.
All caches will be stored in the
`/export`
directory
[
caching
]:
../configuration/autoscale.md#distributed-runners-caching
[
registry
]:
../configuration/autoscale.md#distributed-docker-registry-mirroring
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment