Skip to content

Commit cddd304

Browse files
authored
Merge pull request #35 from boegel/docker_client_pilot
add Dockerfile for container providing easy access to EESSI pilot repository
2 parents c4e0665 + 07f3318 commit cddd304

File tree

4 files changed

+68
-0
lines changed

4 files changed

+68
-0
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
name: Test containers
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
test-client-container:
7+
runs-on: ubuntu-latest
8+
steps:
9+
- uses: actions/checkout@v2
10+
- name: Build the Docker image
11+
run: docker build . --file containers/Dockerfile.EESSI-client-pilot-centos7
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
FROM docker.io/library/centos:7.8.2003
2+
3+
RUN yum install -y http://cvmrepo.web.cern.ch/cvmrepo/yum/cvmfs-release-latest.noarch.rpm \
4+
&& yum install -y cvmfs cvmfs-config-default cvmfs-fuse3 sudo vim openssh-clients \
5+
&& yum install -y https://github.com/EESSI/filesystem-layer/releases/download/v0.2.1/cvmfs-config-eessi-0.2.1-1.noarch.rpm
6+
7+
RUN echo 'CVMFS_QUOTA_LIMIT=10000' > /etc/cvmfs/default.local \
8+
&& echo 'CVMFS_HTTP_PROXY="DIRECT"' >> /etc/cvmfs/default.local
9+
10+
RUN mkdir -p /cvmfs/{cvmfs-config.eessi-hpc.org,pilot.eessi-hpc.org}
11+
12+
RUN useradd -ms /bin/bash eessi
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
FROM docker.io/arm64v8/centos:7
2+
3+
RUN yum install -y http://cvmrepo.web.cern.ch/cvmrepo/yum/cvmfs-release-latest.noarch.rpm \
4+
&& yum install -y cvmfs cvmfs-fuse3 --nogpgcheck \
5+
&& yum install -y cvmfs-config-default sudo vim openssh-clients \
6+
&& yum install -y https://github.com/EESSI/filesystem-layer/releases/download/v0.2.1/cvmfs-config-eessi-0.2.1-1.noarch.rpm
7+
8+
RUN echo 'CVMFS_QUOTA_LIMIT=10000' > /etc/cvmfs/default.local \
9+
&& echo 'CVMFS_HTTP_PROXY="DIRECT"' >> /etc/cvmfs/default.local
10+
11+
RUN mkdir -p /cvmfs/{cvmfs-config.eessi-hpc.org,pilot.eessi-hpc.org}
12+
13+
RUN useradd -ms /bin/bash eessi

containers/README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Containers for EESSI
2+
3+
This directory contains recipes for containers that are useful in the scope of the EESSI project.
4+
5+
## Client container
6+
7+
Container to provide easy access to EESSI pilot repository,
8+
see https://hub.docker.com/repository/docker/eessi/client-pilot and https://eessi.github.io/docs/pilot.
9+
10+
### Build container
11+
12+
```shell
13+
export EESSI_PILOT_VERSION=2020.09
14+
docker build --no-cache -f Dockerfile.EESSI-client-pilot-centos7 -t eessi/client-pilot:centos7-${EESSI_PILOT_VERSION} .
15+
```
16+
17+
### Push to Docker Hub (requires credentials)
18+
19+
```
20+
docker push eessi/client-pilot:centos7-${EESSI_PILOT_VERSION}
21+
```
22+
23+
### Run (using Singularity)
24+
25+
```
26+
mkdir -p /tmp/$USER/{var-lib-cvmfs,var-run-cvmfs,home}
27+
export SINGULARITY_BIND="/tmp/$USER/var-run-cvmfs:/var/run/cvmfs,/tmp/$USER/var-lib-cvmfs:/var/lib/cvmfs"
28+
export SINGULARITY_HOME="/tmp/$USER/home:/home/$USER"
29+
export EESSI_CONFIG="container:cvmfs2 cvmfs-config.eessi-hpc.org /cvmfs/cvmfs-config.eessi-hpc.org"
30+
export EESSI_PILOT="container:cvmfs2 pilot.eessi-hpc.org /cvmfs/pilot.eessi-hpc.org"
31+
singularity shell --fusemount "$EESSI_CONFIG" --fusemount "$EESSI_PILOT" docker://eessi/client-pilot:centos7-${EESSI_PILOT_VERSION}
32+
```

0 commit comments

Comments
 (0)