-
Notifications
You must be signed in to change notification settings - Fork 126
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2625 from chuckatkins/update-containers
Update containers
- Loading branch information
Showing
7 changed files
with
240 additions
and
415 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
name: Docker | ||
|
||
on: | ||
push: | ||
branches: | ||
- master | ||
- release* | ||
pull_request: | ||
branches: | ||
- master | ||
- release* | ||
|
||
jobs: | ||
docker: | ||
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
baseos: [ | ||
ubuntu18.04, | ||
ubuntu20.04 ] | ||
|
||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
ref: ${{ github.event.pull_request.head.sha }} | ||
- name: Build image | ||
run: | | ||
if [ "${{github.event_name}}" = "pull_request" ] | ||
then | ||
adios_ver="pr${{ github.event.number }}" | ||
else | ||
adios_ver="${{ github.ref }}" | ||
fi | ||
docker build \ | ||
-t ornladios/adios2:${adios_ver}-${{ matrix.baseos }} \ | ||
--build-arg adios_ver=${adios_ver} \ | ||
--build-arg base=${{ matrix.baseos }} \ | ||
scripts/docker/complete | ||
- name: Push image to Docker Hub | ||
if: github.event_name == 'push' | ||
env: | ||
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} | ||
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }} | ||
run: | | ||
docker login \ | ||
--username="${DOCKERHUB_USERNAME}" \ | ||
--password="${DOCKERHUB_PASSWORD}" && \ | ||
docker push ornladios/adios2:${{ github.ref }}-${{ matrix.baseos }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
ARG base=ubuntu20.04 | ||
FROM ornladios/adios2:dependencies-${base} | ||
|
||
USER root | ||
|
||
# Install adios | ||
# Note: There's a little extra bit of trickery here to retrieve active pull | ||
# requests not yet merged. This is only used for CI purposes and can be | ||
# dropped from your own images | ||
ARG adios_ver=master | ||
WORKDIR /opt/adios | ||
RUN git clone https://github.com/ornladios/adios2.git source && \ | ||
cd source && \ | ||
git fetch origin +refs/pull/*/head:refs/remotes/origin/pr* && \ | ||
git checkout ${adios_ver} && \ | ||
cd .. && \ | ||
mkdir build && \ | ||
cd build && \ | ||
. /etc/profile && \ | ||
if [ -f /etc/redhat-release ]; then module load mpi; fi && \ | ||
cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release \ | ||
-DBUILD_TESTING=OFF \ | ||
-DADIOS2_BUILD_EXAMPLES=OFF \ | ||
../source && \ | ||
adios_ver_dir=$(sed -n 's|^set(PACKAGE_VERSION "\([^"]*\)")|\1|p' adios2-config-version.cmake|head -1) && \ | ||
cmake -DCMAKE_INSTALL_PREFIX=/opt/adios/${adios_ver_dir} . && \ | ||
make -j$(grep -c '^processor' /proc/cpuinfo) install && \ | ||
cd .. && \ | ||
rm -rf source build && \ | ||
echo "export PATH=\"/opt/adios/${adios_ver_dir}/bin:${PATH}\"" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo "export LD_LIBRARY_PATH=\"/opt/adios/${adios_ver_dir}/lib:${LD_LIBRARY_PATH}\"" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo "export CMAKE_PREFIX_PATH=\"/opt/adios/${adios_ver_dir}:${CMAKE_PREFIX_PATH}\"" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo "export PYTHONPATH=\"/opt/adios/${adios_ver_dir}/lib/python3/dist-packages:${PYTHONPATH}\"" \ | ||
>> /etc/profile.d/adios2.sh | ||
|
||
WORKDIR /home/adios | ||
USER adios |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
FROM centos:centos7 | ||
|
||
# Install system dependencies | ||
RUN yum upgrade -y && \ | ||
yum install -y epel-release && \ | ||
yum install -y https://repo.ius.io/ius-release-el7.rpm && \ | ||
yum install -y \ | ||
sudo curl vim git224 gdb gcc gcc-c++ gcc-gfortran make pkg-config \ | ||
openmpi-devel blosc-devel bzip2-devel zeromq-devel \ | ||
libzstd-devel hdf5-openmpi-devel cmake3 \ | ||
python-devel numpy mpi4py-openmpi libfabric-devel && \ | ||
ln -s /usr/bin/cmake3 /usr/local/bin/cmake && \ | ||
yum clean all | ||
|
||
# Install ZFP | ||
ARG zfp_ver=0.5.5 | ||
WORKDIR /opt/zfp | ||
RUN git clone --depth 1 --branch ${zfp_ver} \ | ||
https://github.com/LLNL/zfp.git source && \ | ||
mkdir build && \ | ||
cd build && \ | ||
source /etc/profile && \ | ||
cmake \ | ||
-DBUILD_SHARED_LIBS=ON \ | ||
-DCMAKE_BUILD_TYPE=Release \ | ||
-DCMAKE_INSTALL_PREFIX=/opt/zfp/${zfp_ver} \ | ||
-DBUILD_TESTING=OFF \ | ||
../source && \ | ||
make -j$(grep -c '^processor' /proc/cpuinfo) install && \ | ||
cd .. && \ | ||
rm -rf source build && \ | ||
echo export PATH="/opt/zfp/${zfp_ver}/bin:${PATH}" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo export LD_LIBRARY_PATH="/opt/zfp/${zfp_ver}/lib64:${LD_LIBRARY_PATH}" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo export CMAKE_PREFIX_PATH="/opt/zfp/${zfp_ver}:${CMAKE_PREFIX_PATH}" \ | ||
>> /etc/profile.d/adios2.sh | ||
|
||
# Install SZ | ||
ARG sz_ver=2.1.11.1 | ||
WORKDIR /opt/sz | ||
RUN git clone --depth 1 --branch v${sz_ver} \ | ||
https://github.com/disheng222/SZ.git source && \ | ||
mkdir build && \ | ||
cd build && \ | ||
source /etc/profile && \ | ||
cmake \ | ||
-DBUILD_SHARED_LIBS=ON \ | ||
-DCMAKE_BUILD_TYPE=Release \ | ||
-DCMAKE_INSTALL_PREFIX=/opt/sz/${sz_ver} \ | ||
-DBUILD_TESTS=OFF \ | ||
../source && \ | ||
make -j$(grep -c '^processor' /proc/cpuinfo) install && \ | ||
cd .. && \ | ||
rm -rf source build && \ | ||
echo export PATH="/opt/sz/${sz_ver}/bin:${PATH}" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo export LD_LIBRARY_PATH="/opt/sz/${sz_ver}/lib64:${LD_LIBRARY_PATH}" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo export CMAKE_PREFIX_PATH="/opt/sz/${sz_ver}:${CMAKE_PREFIX_PATH}" \ | ||
>> /etc/profile.d/adios2.sh | ||
|
||
RUN useradd -G wheel -m adios && echo "adios:adios" | chpasswd && \ | ||
echo module load mpi >> /home/adios/.bashrc | ||
WORKDIR /home/adios | ||
USER adios | ||
CMD /bin/bash --login |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
ARG ubuntu_ver=18.04 | ||
FROM ubuntu:${ubuntu_ver} | ||
|
||
# Update apt repos | ||
RUN export DEBIAN_FRONTEND=noninteractive && \ | ||
apt-get update -y && \ | ||
apt-get install -y apt-utils | ||
|
||
# Install system dependencies | ||
RUN export DEBIAN_FRONTEND=noninteractive && \ | ||
apt-get install -y \ | ||
sudo git gcc g++ gfortran make pkg-config \ | ||
openmpi-bin libopenmpi-dev python3-dev python3-numpy python3-mpi4py \ | ||
libblosc-dev libbz2-dev libpng-dev libhdf5-openmpi-dev libzmq3-dev \ | ||
libzstd-dev | ||
|
||
# Install CMake from the Kitware APT repo to get the latest release | ||
RUN export DEBIAN_FRONTEND=noninteractive && \ | ||
apt-get install -y \ | ||
apt-transport-https ca-certificates gnupg wget && \ | ||
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc \ | ||
2>/dev/null | \ | ||
gpg --dearmor - | \ | ||
sudo tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null && \ | ||
. /etc/lsb-release && \ | ||
echo "deb https://apt.kitware.com/ubuntu/ ${DISTRIB_CODENAME} main" \ | ||
> /etc/apt/sources.list.d/kitware.list && \ | ||
apt-get update -y && \ | ||
apt-get install -y cmake | ||
|
||
# Clean up | ||
RUN apt-get clean -y | ||
|
||
# Install ZFP | ||
ARG zfp_ver=0.5.5 | ||
WORKDIR /opt/zfp | ||
RUN git clone --branch ${zfp_ver} \ | ||
https://github.com/LLNL/zfp.git source && \ | ||
mkdir build && \ | ||
cd build && \ | ||
. /etc/profile && \ | ||
cmake \ | ||
-DBUILD_SHARED_LIBS=ON \ | ||
-DCMAKE_BUILD_TYPE=Release \ | ||
-DCMAKE_INSTALL_PREFIX=/opt/zfp/${zfp_ver} \ | ||
-DBUILD_TESTING=OFF \ | ||
../source && \ | ||
make -j$(grep -c '^processor' /proc/cpuinfo) install && \ | ||
cd .. && \ | ||
rm -rf source build && \ | ||
echo export PATH="/opt/zfp/${zfp_ver}/bin:${PATH}" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo export LD_LIBRARY_PATH="/opt/zfp/${zfp_ver}/lib:${LD_LIBRARY_PATH}" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo export CMAKE_PREFIX_PATH="/opt/zfp/${zfp_ver}:${CMAKE_PREFIX_PATH}" \ | ||
>> /etc/profile.d/adios2.sh | ||
|
||
# Install SZ | ||
ARG sz_ver=2.1.11.1 | ||
WORKDIR /opt/sz | ||
RUN git clone --branch v${sz_ver} \ | ||
https://github.com/disheng222/SZ.git source && \ | ||
mkdir build && \ | ||
cd build && \ | ||
. /etc/profile && \ | ||
cmake \ | ||
-DBUILD_SHARED_LIBS=ON \ | ||
-DCMAKE_BUILD_TYPE=Release \ | ||
-DCMAKE_INSTALL_PREFIX=/opt/sz/${sz_ver} \ | ||
-DBUILD_TESTS=OFF \ | ||
../source && \ | ||
make -j$(grep -c '^processor' /proc/cpuinfo) install && \ | ||
cd .. && \ | ||
rm -rf source build && \ | ||
echo export PATH="/opt/sz/${sz_ver}/bin:${PATH}" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo export LD_LIBRARY_PATH="/opt/sz/${sz_ver}/lib:${LD_LIBRARY_PATH}" \ | ||
>> /etc/profile.d/adios2.sh && \ | ||
echo export CMAKE_PREFIX_PATH="/opt/sz/${sz_ver}:${CMAKE_PREFIX_PATH}" \ | ||
>> /etc/profile.d/adios2.sh | ||
|
||
RUN useradd -G sudo -m adios && echo "adios:adios" | chpasswd | ||
WORKDIR /home/adios | ||
USER adios | ||
CMD /bin/bash --login |
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.