Image runner-Bash
Simple container used to build & test bash scripts, using gitlabCI runner, under a container based on startx/fedora container
Available flavours
Docker Hub repository | Content | Bash | Make |
---|---|---|---|
startx/runner-bash:latest |
Fedora core rawhide | 5.1.4 | 4.3 |
startx/runner-bash:35 |
Fedora core 35 | 5.1.4 | 4.3 |
startx/runner-bash:34 |
Fedora core 34 | 5.1.4 | 4.3 |
startx/runner-bash:33 |
Fedora core 33 | 5.0.17 | 4.3 |
startx/runner-bash:32 |
Fedora core 32 | ||
startx/runner-bash:31 |
Fedora core 31 | 5.0.17 | 4.2.1 |
startx/runner-bash:30 |
Fedora core 30 | ||
startx/runner-bash:29 |
Fedora core 29 | ||
startx/runner-bash:28 |
Fedora core 28 | ||
startx/runner-bash:27 |
Fedora core 27 | ||
startx/runner-bash:26 |
Fedora core 26 | ||
startx/runner-bash:alma8 |
Alma 8 | 4.4.19 | 4.2.1 |
startx/runner-bash:rocky8 |
Rocky 8 | 4.4.19 | 4.2.1 |
startx/runner-bash:centos9 |
Centos 9 | 4.4.19 | 4.2.1 |
startx/runner-bash:centos8 |
Centos 8 | 4.4.19 | 4.2.1 |
startx/runner-bash:centos7 |
Centos 7 | 4.2.46 | 3.82 |
startx/runner-bash:ubi8 |
RedHat UBI 8 | 4.4.20 | 4.3 |
startx/runner-bash:alpine3 |
Alpine 3.12 | 5.0.17 | 4.3 |
Running from dockerhub registry
If you want to be guided on setting-up and installing various containers engines (docker, podman, s2i, dockerEE, kubernetes, openshift) you can read ours containers engines guidelines.
- with
docker
you can rundocker run -it --name="service-bash" startx/runner-bash
from any docker host - with
docker-compose
you can create a docker-compose.yml file with the following content
service:
image: startx/runner-bash:latest
container_name: "service-bash"
volumes:
- "/tmp/container/bash/logs:/logs:z"
Using this image as base container
You can use this Dockerfile template to start a new personalized container based on this container. Create a file named Dockerfile in your project directory and copy this content inside. See docker guide for instructions on how to use this file.
FROM quay.io/startx/runner-bash:latest
#... your container specifications
CMD ["/bin/sx", "run"]
Environment variable
This container is based on startx fedora container who came with some additional environment variable
Variable | Type | Mandatory | Description |
---|---|---|---|
base image environement | see environment list | ||
HOSTNAME | auto |
auto |
Container unique id automatically assigned by docker daemon at startup |
LOG_PATH | auto |
auto |
default set to /var/log/bash and used as a volume mountpoint |
Exposed port
no exposed port
Exposed volumes
Container directory | Description |
---|---|
/logs | log directory used to record container and bash logs |
Testing the service
access to the runner with docker logs service-bash
.
For advanced users
You want to use this container and code to build and create locally this container, follow theses instructions.
This section will help you if you want to :
- Get latest version of this service container
- Enhance container content by adding instruction in Dockefile before build step
You must have a working environment with the source code of this repository. Read and follow how to setup your working environment to get a working directory. The following instructions assume you are at the top level of your working directory.
Build & run a container using docker
- Jump into the container directory with
cd GitlabRunner/bash
- Build the container using
docker build -t runner-bash .
- Run this container
- Interactively with
docker run -v /logs -it runner-bash
. If you add a second parameter (like/bin/bash
) to will run this command instead of the default entrypoint. Usefull to interact with this container (ex:/bin/bash
,/bin/ps -a
,/bin/df -h
,…) - As a daemon with
docker run -v /logs -d runner-bash sleep infinity
Build & run a container using docker-compose
- Jump into the container directory with
cd GitlabRunner/bash
- Run this container
- Interactively with
docker-compose up
Startup logs appears and escaping this command stop the container - As a daemon with
docker-compose up -d
. Container startup logs can be read usingdocker-compose logs
If you experience trouble with port already used, edit docker-compose.yml file and change port mapping