Skip to content

Commit

Permalink
initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
harrypuuter committed Jan 17, 2024
1 parent 1bcd303 commit efa33d4
Show file tree
Hide file tree
Showing 7 changed files with 466 additions and 0 deletions.
49 changes: 49 additions & 0 deletions .github/workflows/deploy-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#
name: Create and publish a Docker image

# Configures this workflow to run every time a change is pushed to the branch called `release`.
on:
push:
branches: ['release']

# Defines two custom environment variables for the workflow. These are used for the Container registry domain, and a name for the Docker image that this workflow builds.
env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}

# There is a single job in this workflow. It's configured to run on the latest available version of Ubuntu.
jobs:
build-and-push-image:
runs-on: ubuntu-latest
# Sets the permissions granted to the `GITHUB_TOKEN` for the actions in this job.
permissions:
contents: read
packages: write
#
steps:
- name: Checkout repository
uses: actions/checkout@v4
# Uses the `docker/login-action` action to log in to the Container registry registry using the account and password that will publish the packages. Once published, the packages are scoped to the account defined here.
- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.TOKEN }}
# This step uses [docker/metadata-action](https://github.com/docker/metadata-action#about) to extract tags and labels that will be applied to the specified image. The `id` "meta" allows the output of this step to be referenced in a subsequent step. The `images` value provides the base name for the tags and labels.
- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
# This step uses the `docker/build-push-action` action to build the image, based on your repository's `Dockerfile`. If the build succeeds, it pushes the image to GitHub Packages.
# It uses the `context` parameter to define the build's context as the set of files located in the specified path. For more information, see "[Usage](https://github.com/docker/build-push-action#usage)" in the README of the `docker/build-push-action` repository.
# It uses the `tags` and `labels` parameters to tag and label the image with the output from the "meta" step.
- name: Build and push Docker image
uses: docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4
with:
context: .
file: centos7/KingMaker_env/Dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: Kingmaker/centos7:latest
33 changes: 33 additions & 0 deletions centos7/KingMaker_env/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
FROM centos:7
LABEL AUTHOR="Sebastian Brommer <brommer.sebastian@gmail.com>"
ARG MINIFORGE_NAME=Miniforge3
ARG MINIFORGE_VERSION=23.11.0-0
ARG TARGETPLATFORM
ARG ENV_NAME=KingMaker_env
ENV CONDA_DIR=/opt/conda

# Create Server directory
RUN mkdir -p /srv

# Add configurations
ADD ${ENV_NAME}.yml /srv/conda_env.yml

RUN yum -y update && yum clean all

RUN yum -y install epel-release && yum clean all
RUN yum -y install wget python3 python3-pip && yum clean all

RUN python3 -m pip install --upgrade pip
# Install conda
RUN wget --quiet https://github.com/conda-forge/miniforge/releases/download/${MINIFORGE_VERSION}/${MINIFORGE_NAME}-${MINIFORGE_VERSION}-Linux-$(uname -m).sh -O /tmp/miniforge.sh && \
/bin/bash /tmp/miniforge.sh -b -p ${CONDA_DIR} && \
rm /tmp/miniforge.sh
RUN . ${CONDA_DIR}/etc/profile.d/conda.sh && conda env create -f /srv/conda_env.yml -n ${ENV_NAME}

RUN echo ". ${CONDA_DIR}/etc/profile.d/conda.sh && conda activate ${ENV_NAME}" >> /etc/skel/.bashrc && \
echo ". ${CONDA_DIR}/etc/profile.d/conda.sh && conda activate ${ENV_NAME}" >> ~/.bashrc

RUN yum install -y tini && yum clean all

ENTRYPOINT ["tini", "--"]
CMD [ "/bin/bash" ]
106 changes: 106 additions & 0 deletions centos7/KingMaker_env/KingMaker_env.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
channels:
- conda-forge
- defaults
dependencies:
- _libgcc_mutex=0.1=conda_forge
- _openmp_mutex=4.5=2_gnu
- boost=1.74.0=py39h5472131_5
- boost-cpp=1.74.0=h75c5d50_8
- bzip2=1.0.8=h7f98852_4
- c-ares=1.18.1=h7f98852_0
- ca-certificates=2022.12.7=ha878542_0
- cgsi-gsoap=1.3.11=h876a3cc_2
- conda-pack=0.7.1=pyhd8ed1ab_0
- curl=7.86.0=h7bff187_1
- cyrus-sasl=2.1.27=h230043b_5
- davix=0.7.6=hb44b51d_0
- dcap=2.47.12=hd35416c_3
- expat=2.5.0=hcb278e6_1
- gct=6.2.1550507116=h812cca2_2
- gettext=0.21.1=h27087fc_0
- gfal2=2.19.2=h13c04c2_0
- gfal2-util=1.8.0=pyhd8ed1ab_0
- git=2.39.1=pl5321ha3eba64_0
- git-lfs=3.3.0=ha770c72_0
- glib=2.68.4=h9c3ff4c_1
- glib-tools=2.68.4=h9c3ff4c_1
- gsoap=2.8.123=h598caef_0
- gsoap_abi=2.8.106=1
- icu=70.1=h27087fc_0
- json-c=0.15=h98cffda_0
- keyutils=1.6.1=h166bdaf_0
- krb5=1.19.3=h3790be6_0
- ld_impl_linux-64=2.40=h41732ed_0
- libblas=3.9.0=16_linux64_openblas
- libcblas=3.9.0=16_linux64_openblas
- libcurl=7.86.0=h7bff187_1
- libedit=3.1.20191231=he28a2e2_2
- libev=4.33=h516909a_1
- libexpat=2.5.0=hcb278e6_1
- libffi=3.4.2=h7f98852_5
- libgcc-ng=12.2.0=h65d4601_19
- libgfortran-ng=12.2.0=h69a702a_19
- libgfortran5=12.2.0=h337968e_19
- libglib=2.68.4=h174f98d_1
- libgomp=12.2.0=h65d4601_19
- libiconv=1.17=h166bdaf_0
- liblapack=3.9.0=16_linux64_openblas
- libnghttp2=1.51.0=hdcd2b5c_0
- libnsl=2.0.0=h7f98852_0
- libntlm=1.4=h7f98852_1002
- libopenblas=0.3.21=pthreads_h78a6416_3
- libsqlite=3.40.0=h753d276_0
- libssh2=1.10.0=haa6b8db_3
- libstdcxx-ng=12.2.0=h46fd767_19
- libtool=2.4.7=h27087fc_0
- libuuid=2.38.1=h0b41bf4_0
- libxml2=2.10.3=hca2bb57_4
- libzlib=1.2.13=h166bdaf_4
- ncurses=6.3=h27087fc_1
- numpy=1.24.2=py39h7360e5f_0
- openldap=2.4.59=h43732ee_0
- openssl=1.1.1t=h0b41bf4_0
- pcre=8.45=h9c3ff4c_0
- pcre2=10.40=hc3806b6_0
- perl=5.32.1=2_h7f98852_perl5
- pip=23.0.1=pyhd8ed1ab_0
- pugixml=1.11.4=h9c3ff4c_0
- python=3.9.15=h47a2c10_0_cpython
- python-gfal2=1.10.1=py39h4309f8f_0
- python_abi=3.9=3_cp39
- readline=8.2=h8228510_1
- scitokens-cpp=0.7.1=h0255ffa_0
- setuptools=67.6.1=pyhd8ed1ab_0
- sqlite=3.40.0=h4ff8645_0
- srm-ifce=1.24.5=h9da80fa_1
- tk=8.6.12=h27826a3_0
- tzdata=2023c=h71feb2d_0
- voms=2.1.0rc2=h4fe81f9_7
- wheel=0.40.0=pyhd8ed1ab_0
- xrootd=5.3.4=py39hf708bbc_0
- xz=5.2.6=h166bdaf_0
- yaml=0.2.5=h7f98852_2
- zlib=1.2.13=h166bdaf_4
- zstd=1.5.2=h3eb15da_6
- pip:
- awkward==2.1.2
- awkward-cpp==13
- docutils==0.19
- lockfile==0.12.2
- luigi==3.0.3
- markdown-it-py==2.2.0
- mdurl==0.1.2
- packaging==23.0
- prompt-toolkit==3.0.38
- pygments==2.15.0
- python-daemon==3.0.1
- python-dateutil==2.8.2
- pyyaml==6.0
- questionary==1.10.0
- rich==13.3.3
- six==1.16.0
- tenacity==6.3.1
- tornado==6.2
- typing-extensions==4.5.0
- uproot==5.0.6
- wcwidth==0.2.6
33 changes: 33 additions & 0 deletions cs8/KingMaker/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
FROM rockylinux:8
LABEL AUTHOR="Sebastian Brommer <brommer.sebastian@gmail.com>"
ARG MINIFORGE_NAME=Miniforge3
ARG MINIFORGE_VERSION=23.11.0-0
ARG TARGETPLATFORM
ARG ENV_NAME=KingMaker_env
ENV CONDA_DIR=/opt/conda

# Create Server directory
RUN mkdir -p /srv

# Add configurations
ADD ${ENV_NAME}.yml /srv/conda_env.yml

RUN dnf -y update && dnf clean all

RUN dnf -y install epel-release && dnf clean all
RUN dnf -y install wget python3 python3-pip && dnf clean all

RUN python3 -m pip install --upgrade pip
# Install conda
RUN wget --quiet https://github.com/conda-forge/miniforge/releases/download/${MINIFORGE_VERSION}/${MINIFORGE_NAME}-${MINIFORGE_VERSION}-Linux-$(uname -m).sh -O /tmp/miniforge.sh && \
/bin/bash /tmp/miniforge.sh -b -p ${CONDA_DIR} && \
rm /tmp/miniforge.sh
RUN . ${CONDA_DIR}/etc/profile.d/conda.sh && conda env create -f /srv/conda_env.yml -n ${ENV_NAME}

RUN echo ". ${CONDA_DIR}/etc/profile.d/conda.sh && conda activate ${ENV_NAME}" >> /etc/skel/.bashrc && \
echo ". ${CONDA_DIR}/etc/profile.d/conda.sh && conda activate ${ENV_NAME}" >> ~/.bashrc

RUN dnf install -y tini && dnf clean all

ENTRYPOINT ["tini", "--"]
CMD [ "/bin/bash" ]
106 changes: 106 additions & 0 deletions cs8/KingMaker/KingMaker_env.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
channels:
- conda-forge
- defaults
dependencies:
- _libgcc_mutex=0.1=conda_forge
- _openmp_mutex=4.5=2_gnu
- boost=1.74.0=py39h5472131_5
- boost-cpp=1.74.0=h75c5d50_8
- bzip2=1.0.8=h7f98852_4
- c-ares=1.18.1=h7f98852_0
- ca-certificates=2022.12.7=ha878542_0
- cgsi-gsoap=1.3.11=h876a3cc_2
- conda-pack=0.7.1=pyhd8ed1ab_0
- curl=7.86.0=h7bff187_1
- cyrus-sasl=2.1.27=h230043b_5
- davix=0.7.6=hb44b51d_0
- dcap=2.47.12=hd35416c_3
- expat=2.5.0=hcb278e6_1
- gct=6.2.1550507116=h812cca2_2
- gettext=0.21.1=h27087fc_0
- gfal2=2.19.2=h13c04c2_0
- gfal2-util=1.8.0=pyhd8ed1ab_0
- git=2.39.1=pl5321ha3eba64_0
- git-lfs=3.3.0=ha770c72_0
- glib=2.68.4=h9c3ff4c_1
- glib-tools=2.68.4=h9c3ff4c_1
- gsoap=2.8.123=h598caef_0
- gsoap_abi=2.8.106=1
- icu=70.1=h27087fc_0
- json-c=0.15=h98cffda_0
- keyutils=1.6.1=h166bdaf_0
- krb5=1.19.3=h3790be6_0
- ld_impl_linux-64=2.40=h41732ed_0
- libblas=3.9.0=16_linux64_openblas
- libcblas=3.9.0=16_linux64_openblas
- libcurl=7.86.0=h7bff187_1
- libedit=3.1.20191231=he28a2e2_2
- libev=4.33=h516909a_1
- libexpat=2.5.0=hcb278e6_1
- libffi=3.4.2=h7f98852_5
- libgcc-ng=12.2.0=h65d4601_19
- libgfortran-ng=12.2.0=h69a702a_19
- libgfortran5=12.2.0=h337968e_19
- libglib=2.68.4=h174f98d_1
- libgomp=12.2.0=h65d4601_19
- libiconv=1.17=h166bdaf_0
- liblapack=3.9.0=16_linux64_openblas
- libnghttp2=1.51.0=hdcd2b5c_0
- libnsl=2.0.0=h7f98852_0
- libntlm=1.4=h7f98852_1002
- libopenblas=0.3.21=pthreads_h78a6416_3
- libsqlite=3.40.0=h753d276_0
- libssh2=1.10.0=haa6b8db_3
- libstdcxx-ng=12.2.0=h46fd767_19
- libtool=2.4.7=h27087fc_0
- libuuid=2.38.1=h0b41bf4_0
- libxml2=2.10.3=hca2bb57_4
- libzlib=1.2.13=h166bdaf_4
- ncurses=6.3=h27087fc_1
- numpy=1.24.2=py39h7360e5f_0
- openldap=2.4.59=h43732ee_0
- openssl=1.1.1t=h0b41bf4_0
- pcre=8.45=h9c3ff4c_0
- pcre2=10.40=hc3806b6_0
- perl=5.32.1=2_h7f98852_perl5
- pip=23.0.1=pyhd8ed1ab_0
- pugixml=1.11.4=h9c3ff4c_0
- python=3.9.15=h47a2c10_0_cpython
- python-gfal2=1.10.1=py39h4309f8f_0
- python_abi=3.9=3_cp39
- readline=8.2=h8228510_1
- scitokens-cpp=0.7.1=h0255ffa_0
- setuptools=67.6.1=pyhd8ed1ab_0
- sqlite=3.40.0=h4ff8645_0
- srm-ifce=1.24.5=h9da80fa_1
- tk=8.6.12=h27826a3_0
- tzdata=2023c=h71feb2d_0
- voms=2.1.0rc2=h4fe81f9_7
- wheel=0.40.0=pyhd8ed1ab_0
- xrootd=5.3.4=py39hf708bbc_0
- xz=5.2.6=h166bdaf_0
- yaml=0.2.5=h7f98852_2
- zlib=1.2.13=h166bdaf_4
- zstd=1.5.2=h3eb15da_6
- pip:
- awkward==2.1.2
- awkward-cpp==13
- docutils==0.19
- lockfile==0.12.2
- luigi==3.0.3
- markdown-it-py==2.2.0
- mdurl==0.1.2
- packaging==23.0
- prompt-toolkit==3.0.38
- pygments==2.15.0
- python-daemon==3.0.1
- python-dateutil==2.8.2
- pyyaml==6.0
- questionary==1.10.0
- rich==13.3.3
- six==1.16.0
- tenacity==6.3.1
- tornado==6.2
- typing-extensions==4.5.0
- uproot==5.0.6
- wcwidth==0.2.6
33 changes: 33 additions & 0 deletions rhel9/KingMaker_env/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
FROM rockylinux:9
LABEL AUTHOR="Sebastian Brommer <brommer.sebastian@gmail.com>"
ARG MINIFORGE_NAME=Miniforge3
ARG MINIFORGE_VERSION=23.11.0-0
ARG TARGETPLATFORM
ARG ENV_NAME=KingMaker_env
ENV CONDA_DIR=/opt/conda

# Create Server directory
RUN mkdir -p /srv

# Add configurations
ADD ${ENV_NAME}.yml /srv/conda_env.yml

RUN dnf -y update && dnf clean all

RUN dnf -y install epel-release && dnf clean all
RUN dnf -y install wget python3 python3-pip && dnf clean all

RUN python3 -m pip install --upgrade pip
# Install conda
RUN wget --quiet https://github.com/conda-forge/miniforge/releases/download/${MINIFORGE_VERSION}/${MINIFORGE_NAME}-${MINIFORGE_VERSION}-Linux-$(uname -m).sh -O /tmp/miniforge.sh && \
/bin/bash /tmp/miniforge.sh -b -p ${CONDA_DIR} && \
rm /tmp/miniforge.sh
RUN . ${CONDA_DIR}/etc/profile.d/conda.sh && conda env create -f /srv/conda_env.yml -n ${ENV_NAME}

RUN echo ". ${CONDA_DIR}/etc/profile.d/conda.sh && conda activate ${ENV_NAME}" >> /etc/skel/.bashrc && \
echo ". ${CONDA_DIR}/etc/profile.d/conda.sh && conda activate ${ENV_NAME}" >> ~/.bashrc

RUN dnf install -y tini && dnf clean all

ENTRYPOINT ["tini", "--"]
CMD [ "/bin/bash" ]
Loading

0 comments on commit efa33d4

Please sign in to comment.