-
Notifications
You must be signed in to change notification settings - Fork 117
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 #1142 from lukaszstolarczuk/dockers-adapters
Update and extend dockers
- Loading branch information
Showing
9 changed files
with
523 additions
and
23 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
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,82 @@ | ||
# Copyright (C) 2023-2024 Intel Corporation | ||
# Part of the Unified-Runtime Project, under the Apache License v2.0 with LLVM Exceptions. | ||
# See LICENSE.TXT | ||
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | ||
|
||
# | ||
# Dockerfile - a 'recipe' for Docker to build an image of fedora-based | ||
# environment for building the Unified Runtime project. | ||
# | ||
|
||
# Pull base image ("40") | ||
FROM registry.hub.docker.com/library/fedora@sha256:5ce8497aeea599bf6b54ab3979133923d82aaa4f6ca5ced1812611b197c79eb0 | ||
|
||
# Set environment variables | ||
ENV OS fedora | ||
ENV OS_VER 40 | ||
ENV NOTTY 1 | ||
|
||
# Additional parameters to build docker without building components. | ||
# These ARGs can be set in docker building phase and are used | ||
# within bash scripts (executed within docker). | ||
ARG SKIP_DPCPP_BUILD | ||
ARG SKIP_LIBBACKTRACE_BUILD | ||
|
||
# Base development packages | ||
ARG BASE_DEPS="\ | ||
cmake \ | ||
git \ | ||
make" | ||
|
||
# Unified Runtime's dependencies | ||
ARG UR_DEPS="\ | ||
doxygen \ | ||
python3 \ | ||
python3-pip" | ||
|
||
# Miscellaneous for our builds/CI (optional) | ||
ARG MISC_DEPS="\ | ||
clang \ | ||
ncurses-libs-6.4 \ | ||
passwd \ | ||
sudo \ | ||
wget" | ||
|
||
# Update and install required packages | ||
RUN dnf update -y \ | ||
&& dnf install -y \ | ||
${BASE_DEPS} \ | ||
${UR_DEPS} \ | ||
${MISC_DEPS} \ | ||
&& dnf clean all | ||
|
||
# Prepare a dir (accessible by anyone) | ||
RUN mkdir --mode 777 /opt/ur/ | ||
|
||
# Additional dev. dependencies (installed via pip) | ||
# | ||
# It's actively used and tested only on selected distros. Be aware | ||
# they may not work, because pip packages list differ from OS to OS. | ||
COPY third_party/requirements.txt /opt/ur/requirements.txt | ||
|
||
# Install DPC++ | ||
COPY .github/docker/install_dpcpp.sh /opt/ur/install_dpcpp.sh | ||
ENV DPCPP_PATH=/opt/dpcpp | ||
RUN /opt/ur/install_dpcpp.sh | ||
|
||
# Install libbacktrace | ||
COPY .github/docker/install_libbacktrace.sh /opt/ur/install_libbacktrace.sh | ||
RUN /opt/ur/install_libbacktrace.sh | ||
|
||
# Add a new (non-root) 'test_user' | ||
ENV USER test_user | ||
ENV USERPASS pass | ||
# Change shell to bash with safe pipe usage | ||
SHELL [ "/bin/bash", "-o", "pipefail", "-c" ] | ||
RUN useradd -m ${USER} \ | ||
&& echo "${USER}:${USERPASS}" | chpasswd \ | ||
&& gpasswd wheel -a ${USER} | ||
|
||
# Change shell back to default and switch to 'test_user' | ||
SHELL ["/bin/sh", "-c"] | ||
USER test_user |
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
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,92 @@ | ||
# Copyright (C) 2023-2024 Intel Corporation | ||
# Part of the Unified-Runtime Project, under the Apache License v2.0 with LLVM Exceptions. | ||
# See LICENSE.TXT | ||
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | ||
|
||
# | ||
# Dockerfile - a 'recipe' for Docker to build an image of opensuse-leap-based | ||
# environment for building the Unified Runtime project. | ||
# | ||
|
||
# Pull base image ("15") | ||
FROM registry.hub.docker.com/opensuse/leap@sha256:1cf79e78bb69f39fb2f78a7c2c7ebc4b64cf8d82eb1df76cd36767a595ada7a8 | ||
|
||
# Set environment variables | ||
ENV OS opensuse-leap | ||
ENV OS_VER 15 | ||
ENV NOTTY 1 | ||
|
||
# Additional parameters to build docker without building components. | ||
# These ARGs can be set in docker building phase and are used | ||
# within bash scripts (executed within docker). | ||
ARG SKIP_DPCPP_BUILD | ||
ARG SKIP_LIBBACKTRACE_BUILD | ||
|
||
# Base development packages | ||
ARG BASE_DEPS="\ | ||
cmake \ | ||
gcc \ | ||
gcc-c++ \ | ||
git \ | ||
glibc-devel \ | ||
libstdc++-devel \ | ||
make" | ||
|
||
# Unified Runtime's dependencies | ||
ARG UR_DEPS="\ | ||
doxygen \ | ||
python3 \ | ||
python3-devel \ | ||
python3-pip" | ||
|
||
# Miscellaneous for our builds/CI (optional) | ||
ARG MISC_DEPS="\ | ||
clang \ | ||
gzip \ | ||
libncurses5 \ | ||
sudo \ | ||
tar \ | ||
wget" | ||
|
||
# add openSUSE Leap 15.5 Oss repo | ||
RUN zypper ar -f https://download.opensuse.org/distribution/leap/15.5/repo/oss/ oss | ||
|
||
# Update and install required packages | ||
RUN zypper update -y \ | ||
&& zypper install -y \ | ||
${BASE_DEPS} \ | ||
${UR_DEPS} \ | ||
${MISC_DEPS} \ | ||
&& zypper clean all | ||
|
||
# Prepare a dir (accessible by anyone) | ||
RUN mkdir --mode 777 /opt/ur/ | ||
|
||
# Additional dev. dependencies (installed via pip) | ||
# | ||
# It's actively used and tested only on selected distros. Be aware | ||
# they may not work, because pip packages list differ from OS to OS. | ||
COPY third_party/requirements.txt /opt/ur/requirements.txt | ||
|
||
# Install DPC++ | ||
COPY .github/docker/install_dpcpp.sh /opt/ur/install_dpcpp.sh | ||
ENV DPCPP_PATH=/opt/dpcpp | ||
RUN /opt/ur/install_dpcpp.sh | ||
|
||
# Install libbacktrace | ||
COPY .github/docker/install_libbacktrace.sh /opt/ur/install_libbacktrace.sh | ||
RUN /opt/ur/install_libbacktrace.sh | ||
|
||
# Add a new (non-root) 'test_user' and switch to it | ||
ENV USER test_user | ||
ENV USERPASS pass | ||
ENV PFILE ./password | ||
RUN useradd -m ${USER} \ | ||
&& echo ${USERPASS} > ${PFILE} \ | ||
&& echo ${USERPASS} >> ${PFILE} \ | ||
&& passwd ${USER} < ${PFILE} \ | ||
&& rm -f ${PFILE} \ | ||
&& sed -i 's/# %wheel/%wheel/g' /etc/sudoers \ | ||
&& groupadd wheel \ | ||
&& gpasswd wheel -a ${USER} | ||
USER test_user |
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,93 @@ | ||
# Copyright (C) 2023-2024 Intel Corporation | ||
# Part of the Unified-Runtime Project, under the Apache License v2.0 with LLVM Exceptions. | ||
# See LICENSE.TXT | ||
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | ||
|
||
# | ||
# Dockerfile - a 'recipe' for Docker to build an image of rockylinux-based | ||
# environment for building the Unified Runtime project. | ||
# | ||
|
||
# Pull base image ("8.9") | ||
FROM registry.hub.docker.com/library/rockylinux@sha256:9794037624aaa6212aeada1d28861ef5e0a935adaf93e4ef79837119f2a2d04c | ||
|
||
# Set environment variables | ||
ENV OS rockylinux | ||
ENV OS_VER 8 | ||
ENV NOTTY 1 | ||
|
||
# Additional parameters to build docker without building components. | ||
# These ARGs can be set in docker building phase and are used | ||
# within bash scripts (executed within docker). | ||
ARG SKIP_DPCPP_BUILD | ||
ARG SKIP_LIBBACKTRACE_BUILD | ||
|
||
# Base development packages | ||
ARG BASE_DEPS="\ | ||
cmake \ | ||
git \ | ||
glibc-devel \ | ||
libstdc++-devel \ | ||
make" | ||
|
||
# Unified Runtime's dependencies | ||
ARG UR_DEPS="\ | ||
doxygen \ | ||
python3 \ | ||
python3-pip" | ||
|
||
# Packages required by requirements.txt | ||
ARG PRE_PYTHON_DEPS="\ | ||
libjpeg-turbo-devel \ | ||
python3-devel \ | ||
python3-wheel \ | ||
zlib-devel" | ||
|
||
# Miscellaneous for our builds/CI (optional) | ||
ARG MISC_DEPS="\ | ||
clang \ | ||
ncurses-libs-6.1 \ | ||
passwd \ | ||
sudo \ | ||
wget" | ||
|
||
# Update and install required packages | ||
RUN dnf update -y \ | ||
&& dnf --enablerepo devel install -y \ | ||
${BASE_DEPS} \ | ||
${UR_DEPS} \ | ||
${PRE_PYTHON_DEPS} \ | ||
${MISC_DEPS} \ | ||
&& dnf clean all | ||
|
||
# Prepare a dir (accessible by anyone) | ||
RUN mkdir --mode 777 /opt/ur/ | ||
|
||
# Additional dev. dependencies (installed via pip) | ||
# | ||
# It's actively used and tested only on selected distros. Be aware | ||
# they may not work, because pip packages list differ from OS to OS. | ||
COPY third_party/requirements.txt /opt/ur/requirements.txt | ||
|
||
# Install DPC++ | ||
COPY .github/docker/install_dpcpp.sh /opt/ur/install_dpcpp.sh | ||
ENV DPCPP_PATH=/opt/dpcpp | ||
RUN /opt/ur/install_dpcpp.sh | ||
|
||
# Install libbacktrace | ||
COPY .github/docker/install_libbacktrace.sh /opt/ur/install_libbacktrace.sh | ||
RUN /opt/ur/install_libbacktrace.sh | ||
|
||
# Add a new (non-root) 'test_user' | ||
ENV USER test_user | ||
ENV USERPASS pass | ||
# Change shell to bash with safe pipe usage | ||
SHELL [ "/bin/bash", "-o", "pipefail", "-c" ] | ||
RUN useradd -m $USER \ | ||
&& echo "${USERPASS}" | passwd "${USER}" --stdin \ | ||
&& gpasswd wheel -a "${USER}" \ | ||
&& echo "%wheel ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers | ||
|
||
# Change shell back to default and switch to 'test_user' | ||
SHELL ["/bin/sh", "-c"] | ||
USER test_user |
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 @@ | ||
# Copyright (C) 2023-2024 Intel Corporation | ||
# Part of the Unified-Runtime Project, under the Apache License v2.0 with LLVM Exceptions. | ||
# See LICENSE.TXT | ||
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | ||
|
||
# | ||
# Dockerfile - a 'recipe' for Docker to build an image of rockylinux-based | ||
# environment for building the Unified Runtime project. | ||
# | ||
|
||
# Pull base image ("9.3") | ||
FROM registry.hub.docker.com/library/rockylinux@sha256:d7be1c094cc5845ee815d4632fe377514ee6ebcf8efaed6892889657e5ddaaa6 | ||
|
||
# Set environment variables | ||
ENV OS rockylinux | ||
ENV OS_VER 9 | ||
ENV NOTTY 1 | ||
|
||
# Additional parameters to build docker without building components. | ||
# These ARGs can be set in docker building phase and are used | ||
# within bash scripts (executed within docker). | ||
ARG SKIP_DPCPP_BUILD | ||
ARG SKIP_LIBBACKTRACE_BUILD | ||
|
||
# Base development packages | ||
ARG BASE_DEPS="\ | ||
cmake \ | ||
git \ | ||
glibc-devel \ | ||
libstdc++-devel \ | ||
make" | ||
|
||
# Unified Runtime's dependencies | ||
ARG UR_DEPS="\ | ||
doxygen \ | ||
python3 \ | ||
python3-pip" | ||
|
||
# Miscellaneous for our builds/CI (optional) | ||
ARG MISC_DEPS="\ | ||
clang \ | ||
ncurses-libs-6.2 \ | ||
passwd \ | ||
sudo \ | ||
wget" | ||
|
||
# Update and install required packages | ||
RUN dnf update -y \ | ||
&& dnf --enablerepo devel install -y \ | ||
${BASE_DEPS} \ | ||
${UR_DEPS} \ | ||
${MISC_DEPS} \ | ||
&& dnf clean all | ||
|
||
# Prepare a dir (accessible by anyone) | ||
RUN mkdir --mode 777 /opt/ur/ | ||
|
||
# Additional dev. dependencies (installed via pip) | ||
# | ||
# It's actively used and tested only on selected distros. Be aware | ||
# they may not work, because pip packages list differ from OS to OS. | ||
COPY third_party/requirements.txt /opt/ur/requirements.txt | ||
|
||
# Install DPC++ | ||
COPY .github/docker/install_dpcpp.sh /opt/ur/install_dpcpp.sh | ||
ENV DPCPP_PATH=/opt/dpcpp | ||
RUN /opt/ur/install_dpcpp.sh | ||
|
||
# Install libbacktrace | ||
COPY .github/docker/install_libbacktrace.sh /opt/ur/install_libbacktrace.sh | ||
RUN /opt/ur/install_libbacktrace.sh | ||
|
||
# Add a new (non-root) 'test_user' | ||
ENV USER test_user | ||
ENV USERPASS pass | ||
# Change shell to bash with safe pipe usage | ||
SHELL [ "/bin/bash", "-o", "pipefail", "-c" ] | ||
RUN useradd -m $USER \ | ||
&& echo "${USERPASS}" | passwd "${USER}" --stdin \ | ||
&& gpasswd wheel -a "${USER}" \ | ||
&& echo "%wheel ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers | ||
|
||
# Change shell back to default and switch to 'test_user' | ||
SHELL ["/bin/sh", "-c"] | ||
USER test_user |
Oops, something went wrong.