From 821fc62b651de45dc78874dde63d7f5c836c6e6f Mon Sep 17 00:00:00 2001 From: Cal Heldenbrand Date: Mon, 22 Sep 2025 10:42:17 -0500 Subject: [PATCH 1/4] Port Docker image build to OL8 --- Dockerfile | 72 ++++++++++++++++++++------------------- config/linux/OracleServer | 1 + script/docker_run | 3 +- 3 files changed, 40 insertions(+), 36 deletions(-) create mode 120000 config/linux/OracleServer diff --git a/Dockerfile b/Dockerfile index 3e2c122..69552c1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,37 +1,39 @@ -FROM centos:centos7 - -RUN yum install -y epel-release && yum -y upgrade && yum install -y \ - apr-devel \ - apr-util \ - apr-util-devel \ - autoconf \ - automake \ - bison \ - bzip2 \ - cmake3 \ - curl \ - cyrus-sasl \ - cyrus-sasl-devel \ - flex \ - flex-devel \ - gcc \ - gcc-c++ \ - gdb \ - git \ - gpg \ - httpd \ - httpd-devel \ - libffi-devel \ - libtool \ - libyaml \ - openssl-devel \ - patch \ - readline-devel \ - sqlite-devel \ - make \ - redhat-lsb \ - unzip \ - zlib-devel +FROM oraclelinux:8 + +RUN dnf install -y oraclelinux-release-el8 oracle-epel-release-el8 \ + && dnf --enablerepo=ol8_codeready_builder install -y \ + apr-devel \ + apr-util \ + apr-util-devel \ + autoconf \ + automake \ + bison \ + bzip2 \ + cmake3 \ + curl \ + cyrus-sasl \ + cyrus-sasl-devel \ + flex \ + gcc \ + gcc-c++ \ + gdb \ + git \ + gpg \ + httpd \ + httpd-devel \ + libffi-devel \ + libtool \ + libyaml \ + libyaml-devel \ + openssl-devel \ + patch \ + readline-devel \ + ruby \ + sqlite-devel \ + make \ + redhat-lsb \ + unzip \ + zlib-devel # Import GPG key for RVM RUN gpg \ @@ -52,7 +54,7 @@ SHELL ["/bin/bash", "-l", "-c"] RUN rvm requirements # Pick your ruby version here -RUN rvm install ruby-2.3.3 +RUN rvm install ruby-3.2.3 # Setup our libruby.so dir in ld.so.conf RUN rvm config-get libdir > /etc/ld.so.conf.d/ruby.conf && ldconfig diff --git a/config/linux/OracleServer b/config/linux/OracleServer new file mode 120000 index 0000000..d6b00a3 --- /dev/null +++ b/config/linux/OracleServer @@ -0,0 +1 @@ +CentOS \ No newline at end of file diff --git a/script/docker_run b/script/docker_run index c3a4881..0bfdf33 100755 --- a/script/docker_run +++ b/script/docker_run @@ -1,5 +1,6 @@ #!/bin/bash root=$( readlink -f $( dirname $( readlink -f $0 ) )/.. ) +docker build -t mod_ruby $root docker rm -f mod_ruby_run_container # Change 8080 here if you have a local conflict with it @@ -10,7 +11,7 @@ docker run \ -v $root:/usr/src/mod_ruby \ -ti \ -p 8080:80 \ - mod_ruby /bin/bash -l -c 'cmake3 . && make install && /httpd-gdb' + mod_ruby #If you run httpd in FOREGROUND and run the container #with -d instead of -ti #docker logs -f mod_ruby_run_container From 41c21a9c3a758b5e7d44f843f89de372e68453bc Mon Sep 17 00:00:00 2001 From: Cal Heldenbrand Date: Mon, 22 Sep 2025 12:24:53 -0500 Subject: [PATCH 2/4] Refresh .dockerignore --- .dockerignore | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/.dockerignore b/.dockerignore index d6a6e77..0a21df5 100644 --- a/.dockerignore +++ b/.dockerignore @@ -21,3 +21,42 @@ Makefile src/Makefile install_manifest.txt src/rhtml.yy.cpp +doc/xml/doc.mod +doc/xml/include/latex/modruby_apache_req_imp.rb +doc/xml/include/latex/modruby_apr_table_collision_ex.rb +doc/xml/include/latex/modruby_apr_table_ex.rb +doc/xml/include/latex/modruby_apr_table_ex2.rb +doc/xml/include/latex/modruby_apr_table_ex3.rb +doc/xml/include/latex/modruby_bypass_buffer.rhtml +doc/xml/include/latex/modruby_cgi_cookies_ex.rb +doc/xml/include/latex/modruby_cgi_env_ex.rb +doc/xml/include/latex/modruby_cgi_queries_ex.rb +doc/xml/include/latex/modruby_clear_buffer.rhtml +doc/xml/include/latex/modruby_handler_module.rb +doc/xml/include/latex/modruby_handler_module_override.rb +doc/xml/include/latex/modruby_module_config_get.rb +doc/xml/include/latex/modruby_redirect1_ex.rb +doc/xml/include/latex/modruby_redirect_ex.rb +doc/xml/include/latex/modruby_rfc2388_example.rb +doc/xml/include/latex/modruby_send_file.rhtml +doc/xml/include/latex/modruby_terminate1_ex.rb +doc/xml/include/latex/modruby_terminate2_ex.rb +doc/xml/include/modruby_apache_req_imp.rb.html +doc/xml/include/modruby_apr_table_collision_ex.rb.html +doc/xml/include/modruby_apr_table_ex.rb.html +doc/xml/include/modruby_apr_table_ex2.rb.html +doc/xml/include/modruby_apr_table_ex3.rb.html +doc/xml/include/modruby_bypass_buffer.rhtml.html +doc/xml/include/modruby_cgi_cookies_ex.rb.html +doc/xml/include/modruby_cgi_env_ex.rb.html +doc/xml/include/modruby_cgi_queries_ex.rb.html +doc/xml/include/modruby_clear_buffer.rhtml.html +doc/xml/include/modruby_handler_module.rb.html +doc/xml/include/modruby_handler_module_override.rb.html +doc/xml/include/modruby_module_config_get.rb.html +doc/xml/include/modruby_redirect1_ex.rb.html +doc/xml/include/modruby_redirect_ex.rb.html +doc/xml/include/modruby_rfc2388_example.rb.html +doc/xml/include/modruby_send_file.rhtml.html +doc/xml/include/modruby_terminate1_ex.rb.html +doc/xml/include/modruby_terminate2_ex.rb.html From bdf04bc5a26fd433e54e781dbde1516653a3a2a0 Mon Sep 17 00:00:00 2001 From: Cal Heldenbrand Date: Mon, 22 Sep 2025 12:25:16 -0500 Subject: [PATCH 3/4] Trying out different Ruby versions --- Dockerfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 69552c1..83bb8c0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -54,7 +54,11 @@ SHELL ["/bin/bash", "-l", "-c"] RUN rvm requirements # Pick your ruby version here -RUN rvm install ruby-3.2.3 +# Segfaults in rb_protect() +#RUN rvm install ruby-3.2.3 +# Works +#RUN rvm install ruby-2.7.5 +RUN rvm install ruby-3.0.3 # Setup our libruby.so dir in ld.so.conf RUN rvm config-get libdir > /etc/ld.so.conf.d/ruby.conf && ldconfig From d6470261e13c2df31bece7431c59525779789ba6 Mon Sep 17 00:00:00 2001 From: Cal Heldenbrand Date: Mon, 22 Sep 2025 12:46:44 -0500 Subject: [PATCH 4/4] Downgrade to Ruby 2.7.5 --- Dockerfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 83bb8c0..6fa22d8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -57,8 +57,9 @@ RUN rvm requirements # Segfaults in rb_protect() #RUN rvm install ruby-3.2.3 # Works -#RUN rvm install ruby-2.7.5 -RUN rvm install ruby-3.0.3 +RUN rvm install ruby-2.7.5 +# Same segfault as 3.2.3 +#RUN rvm install ruby-3.0.3 # Setup our libruby.so dir in ld.so.conf RUN rvm config-get libdir > /etc/ld.so.conf.d/ruby.conf && ldconfig