-
-
Notifications
You must be signed in to change notification settings - Fork 101
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docker: Add Amazon Linux 2023 dockerfile (#3555)
* docker: Add Amazon Linux 2023 dockerfile * use jdk21 instead of 17 * Rename Dockerfile.AL2023 to Dockerfile.al2023 Had to edit the file name in github instead of my branch on my local machine. Git on my machine would not detect the name change from uppercase to lowercase, interesting
- Loading branch information
1 parent
9b9329a
commit 2e521c2
Showing
1 changed file
with
37 additions
and
0 deletions.
There are no files selected for viewing
37 changes: 37 additions & 0 deletions
37
...ble/playbooks/AdoptOpenJDK_Unix_Playbook/roles/DockerStatic/Dockerfiles/Dockerfile.al2023
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,37 @@ | ||
FROM amazonlinux:2023 | ||
|
||
RUN dnf -y update && dnf install -y perl openssh-server unzip zip wget tar | ||
RUN dnf install -y --allowerasing gnupg2 | ||
RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -P "" | ||
# Get latest jdk21 ga | ||
RUN wget -q 'https://api.adoptium.net/v3/binary/latest/21/ga/linux/x64/jdk/hotspot/normal/eclipse?project=jdk' -O /tmp/jdk21.tar.gz | ||
RUN gpg --keyserver keyserver.ubuntu.com --recv-keys 3B04D753C9050D9A5D343F39843C48A565F8F04B | ||
# Get sig file for latest jdk21 ga | ||
RUN wget -q `curl -s 'https://api.adoptium.net/v3/assets/feature_releases/21/ga?architecture=x64&heap_size=normal&image_type=jdk&jvm_impl=hotspot&os=linux&page=0&page_size=1&project=jdk&vendor=eclipse' | grep signature_link | awk '{split($0,a,"\""); print a[4]}'` -O /tmp/jdk21.sig | ||
RUN gpg --verify /tmp/jdk21.sig /tmp/jdk21.tar.gz | ||
RUN mkdir -p /usr/lib/jvm/jdk21 && tar -xpzf /tmp/jdk21.tar.gz -C /usr/lib/jvm/jdk21 --strip-components=1 | ||
# Install ant 1.10.12 | ||
RUN wget -q -O /tmp/ant.zip 'https://archive.apache.org/dist/ant/binaries/apache-ant-1.10.12-bin.zip' | ||
RUN wget -q -O /tmp/ant-contrib.tgz https://sourceforge.net/projects/ant-contrib/files/ant-contrib/ant-contrib-1.0b2/ant-contrib-1.0b2-bin.tar.gz | ||
RUN echo "7e6fbcc3563df4bd87c883ad86a161a71da2774e0ed71a1b3aad82cbff1a7656ed9a0acb5ce40652129376dfd79f1ef74ec3369c1067d412a63062fea62ceccd /tmp/ant.zip" > /tmp/ant.sha512 | ||
RUN echo "0fd2771dca2b8b014a4cb3246715b32e20ad5d26754186d82eee781507a183d5e63064890b95eb27c091c93c1209528a0b18a6d7e6901899319492a7610e74ad /tmp/ant-contrib.tgz" >> /tmp/ant.sha512 | ||
RUN sha512sum --check --strict /tmp/ant.sha512 | ||
RUN ln -s /usr/local/apache-ant-1.10.12/bin/ant /usr/bin/ant | ||
RUN unzip -q -d /usr/local /tmp/ant.zip | ||
RUN tar xpfz /tmp/ant-contrib.tgz -C /usr/local/apache-ant-1.10.12/lib --strip-components=2 ant-contrib/lib/ant-contrib.jar | ||
# Clear up space | ||
RUN rm /tmp/jdk21.tar.gz /tmp/ant.zip /tmp/ant-contrib.tgz /tmp/jdk21.sig | ||
# Set up jenkins user | ||
RUN useradd -m -d /home/jenkins jenkins | ||
RUN mkdir /home/jenkins/.ssh | ||
RUN echo "Jenkins_User_SSHKey" > /home/jenkins/.ssh/authorized_keys | ||
RUN chown -R jenkins /home/jenkins/.ssh | ||
RUN chmod -R og-rwx /home/jenkins/.ssh | ||
# RUN service ssh start | ||
CMD ["/usr/sbin/sshd","-D"] | ||
RUN dnf install -y --allowerasing git curl make gcc xorg-x11-server-Xvfb libXrender libXi libXtst procps glibc-langpack-en fontconfig which hostname fakeroot shared-mime-info | ||
# Install Packages For openssl | ||
RUN dnf -y update && dnf install -y openssl gnutls gnutls-utils nss-devel nss-tools | ||
# ENTRYPOINT /usr/lib/jvm/jdk21/bin/java | ||
EXPOSE 22 | ||
# Start with docker run -p 2222:22 UUID |