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
abe59400
Commit
abe59400
authored
9 years ago
by
Kamil Trzcinski
Browse files
Options
Downloads
Patches
Plain Diff
Update docker documentation
parent
5a35b64d
No related branches found
No related tags found
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
dockerfiles/alpine/Dockerfile
+1
-1
1 addition, 1 deletion
dockerfiles/alpine/Dockerfile
dockerfiles/ubuntu/Dockerfile
+1
-1
1 addition, 1 deletion
dockerfiles/ubuntu/Dockerfile
docs/install/docker.md
+41
-26
41 additions, 26 deletions
docs/install/docker.md
with
43 additions
and
28 deletions
dockerfiles/alpine/Dockerfile
+
1
−
1
View file @
abe59400
...
...
@@ -10,6 +10,6 @@ RUN wget -O /tmp/glibc.apk "https://circle-artifacts.com/gh/andyshinn/alpine-pkg
RUN
wget
-O
/usr/bin/gitlab-ci-multi-runner https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-ci-multi-runner-linux-amd64
&&
\
chmod
+x /usr/bin/gitlab-ci-multi-runner
VOLUME
["/etc/gitlab-runner"]
VOLUME
["/etc/gitlab-runner"
, "/var/run/docker.sock"
]
ENTRYPOINT
["gitlab-ci-multi-runner"]
CMD
["run"]
This diff is collapsed.
Click to expand it.
dockerfiles/ubuntu/Dockerfile
+
1
−
1
View file @
abe59400
...
...
@@ -12,6 +12,6 @@ RUN echo "deb https://packages.gitlab.com/runner/gitlab-ci-multi-runner/ubuntu/
ADD
entrypoint /
RUN
chmod
+x /entrypoint
VOLUME
["/etc/gitlab-runner", "/home/gitlab-runner"]
VOLUME
["/etc/gitlab-runner", "/home/gitlab-runner"
, "/var/run/docker.sock"
]
ENTRYPOINT
["/entrypoint"]
CMD
["run", "--user=gitlab-runner", "--working-directory=/home/gitlab-runner"]
This diff is collapsed.
Click to expand it.
docs/install/docker.md
+
41
−
26
View file @
abe59400
## Run gitlab-
ci-multi-
runner in a container
## Run gitlab-runner in a container
### Docker image installation and configuration
...
...
@@ -8,39 +8,42 @@ Install Docker first:
curl
-sSL
https://get.docker.com/ | sh
```
We need to mount a
data
volume into our gitlab-
ci-multi-
runner container to
We need to mount a
config
volume into our gitlab-runner container to
be used for configs and other resources:
```
bash
docker run
-d
--name
multi
-runner
--restart
always
\
-v
/
PATH/TO/DATA/FOLDER:/data
\
ayufan/gitlab-ci-multi
-runner:latest
docker run
-d
--name
gitlab
-runner
--restart
always
\
-v
/
srv/gitlab-runner/config:/etc/gitlab-runner
\
gitlab/gitlab
-runner:latest
```
OR you can use a
data
container to mount you custom data volume:
OR you can use a
config
container to mount you
r
custom data volume:
```
bash
docker run
-d
--name
multi-runner-data
-v
/data busybox:latest /bin/true
docker run
-d
--name
multi-runner
--restart
always
\
--volumes-from
multi-runner-data
\
ayufan/gitlab-ci-multi-runner:latest
docker run
-d
--name
gitlab-runner-config
\
-v
/etc/gitlab-runner
\
busybox:latest
\
/bin/true
docker run
-d
--name
gitlab-runner
--restart
always
\
--volumes-from
gitlab-runner-config
\
gitlab/gitlab-runner:latest
```
If you plan on using Docker as the method of spawing runners, you will need to
mount your docker socket like:
If you plan on using Docker as the method of spaw
n
ing runners, you will need to
mount your docker socket like
this
:
```
bash
docker run
-d
--name
multi
-runner
--restart
always
\
docker run
-d
--name
gitlab
-runner
--restart
always
\
-v
/var/run/docker.sock:/var/run/docker.sock
\
-v
/
PATH/TO/DATA/FOLDER:/data
\
ayufan
/gitlab-
ci-multi-
runner:latest
-v
/
srv/gitlab-runner/config:/etc/gitlab-runner
\
gitlab
/gitlab-runner:latest
```
Register the runner:
```
bash
docker
exec
-it
multi-runner gitlab-ci-multi
-runner register
docker
exec
-it
gitlab
-runner register
Please enter the gitlab-ci coordinator URL
(
e.g. http://gitlab-ci.org:3000/
)
https://ci.gitlab.org/
...
...
@@ -57,33 +60,33 @@ INFO[0037] Runner registered successfully. Feel free to start it, but if it's
running already the config should be automatically reloaded!
```
The runner should
be
started already and you are ready to build your projects!
The runner should
is
started already and you are ready to build your projects!
### Update
Pull the latest version:
```
bash
docker pull
ayufan
/gitlab-
ci-multi-
runner:latest
docker pull
gitlab
/gitlab-runner:latest
```
Stop and remove the existing container:
```
bash
docker stop
multi
-runner
&&
docker
rm
multi
-runner
docker stop
gitlab
-runner
&&
docker
rm
gitlab
-runner
```
Start the container as you did originally:
```
bash
docker run
-d
--name
multi-runner
--restart
always
\
--volumes-from
multi-runner-data
\
docker run
-d
--name
gitlab-runner
--restart
always
\
-v
/var/run/docker.sock:/var/run/docker.sock
\
ayufan/gitlab-ci-multi-runner:latest
-v
/srv/gitlab-runner/config:/etc/gitlab-runner
\
gitlab/gitlab-runner:latest
```
**Note**
: you need to use the same method for mounting you data volume as you
did originally (
`-v /
PATH/TO/DATA/FOLDER:/data
`
or
`--volumes-from
multi
-runner
-data
`
)
did originally (
`-v /
srv/gitlab-runner/config:/etc/gitlab-runner
`
or
`--volumes-from
gitlab
-runner`
)
### Installing Trusted SSL Server Certificates
...
...
@@ -91,8 +94,8 @@ If your GitLab CI server is using self-signed SSL certificates then you should
make sure the GitLab CI server certificate is trusted by the gitlab-ci-multi-runner
container for them to be able to talk to each other.
The gitlab
-ci-multi
-runner image is configured to look for the trusted SSL
certificates at
`/
data
/certs/ca.crt`
, this can however be changed using the
The
`
gitlab
/gitlab
-runner
`
image is configured to look for the trusted SSL
certificates at
`/
etc/gitlab-runner
/certs/ca.crt`
, this can however be changed using the
`-e "CA_CERTIFICATES_PATH=/DIR/CERT"`
configuration option.
Copy the
`ca.crt`
file into the
`certs`
directory on the data volume (or container).
...
...
@@ -100,3 +103,15 @@ The `ca.crt` file should contain the root certificates of all the servers you
want gitlab-ci-multi-runner to trust. The gitlab-ci-multi-runner container will
import the
`ca.crt`
file on startup so if your container is already running you
may need to restart it for the changes to take effect.
### Alpine Linux
You can also use alternative
[
Alpine Linux
](
https://www.alpinelinux.org/
)
based image with much smaller footprint:
```
gitlab/gitlab-runner latest 3e8077e209f5 13 hours ago 304.3 MB
gitlab/gitlab-runner alpine 7c431ac8f30f 13 hours ago 25.98 MB
```
**Alpine Linux image is designed to use only Docker as the method of spawning runners.**
The original
`gitlab/gitlab-runner:latest`
is based on Ubuntu 14.04 LTS.
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