diff --git a/DBMS/CentOS7.6.1810/Dockerfile-mariadb-10.3.8 b/DBMS/CentOS7.6.1810/Dockerfile-mariadb-10.3.8 deleted file mode 100644 index bb5b57982160be8f3c50e26f6847a919d21fc4ee..0000000000000000000000000000000000000000 --- a/DBMS/CentOS7.6.1810/Dockerfile-mariadb-10.3.8 +++ /dev/null @@ -1,17 +0,0 @@ -# Starting from CentOS 7.6.1810 aarch64 -FROM arm64v8/centos:1810 - -# Expose default MariaDB port - notice that this dockerfile only INSTALL MariaDB but not configure and run it -EXPOSE 3306 - -# Compile arg - automatic -ARG COMPILE_THREAD="lscpu | grep ^CPU\(s\): | awk '{print \$2}'" - -# Install required packages from yum, use Huawei Cloud Mirror -RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak && mkdir /etc/yum.repos.d -COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. -RUN yum clean all && yum makecache && yum -y install readline-devel zlib-devel openssl* cmake git gcc* perl* bison wget - -# Get MariaDB source code, build and install -WORKDIR /home -RUN wget "https://archive.mariadb.org//mariadb-10.3.8/source/mariadb-10.3.8.tar.gz" && tar -zxf mariadb-10.3.8.tar.gz && mkdir -p /data/mysql && cd mariadb-10.3.8/ && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mariadb -DMYSQL_DATADIR=/data/mariadb/data -DSYSCONFDIR=/etc -DWITHOUT_TOKUDB=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARVHICE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LOBWRAP=0 -DMYSQL_UNIX_ADDR=/data/mariadb/run/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci && make -j$(eval ${COMPILE_THREAD}) && make -j$(eval ${COMPILE_THREAD}) install && /usr/local/mariadb/bin/mysql --version diff --git a/DBMS/CentOS7.6.1810/CentOS-AltArch-7.repo b/DBMS/CentOS7.6.1810/greenplum/6.0.0/CentOS-AltArch-7.repo similarity index 100% rename from DBMS/CentOS7.6.1810/CentOS-AltArch-7.repo rename to DBMS/CentOS7.6.1810/greenplum/6.0.0/CentOS-AltArch-7.repo diff --git a/DBMS/CentOS7.6.1810/Dockerfile-greenplum-6.0.0 b/DBMS/CentOS7.6.1810/greenplum/6.0.0/Dockerfile-greenplum-6.0.0 similarity index 38% rename from DBMS/CentOS7.6.1810/Dockerfile-greenplum-6.0.0 rename to DBMS/CentOS7.6.1810/greenplum/6.0.0/Dockerfile-greenplum-6.0.0 index 9d7b472d1dcf87e8bf6d3822aed1bec32b255d7c..e18b1b9f6a4e9d4f93b53e5fa5b121a853facfc3 100644 --- a/DBMS/CentOS7.6.1810/Dockerfile-greenplum-6.0.0 +++ b/DBMS/CentOS7.6.1810/greenplum/6.0.0/Dockerfile-greenplum-6.0.0 @@ -4,50 +4,135 @@ FROM arm64v8/centos:1810 # Expose default Greenplum port - notice that this dockerfile only INSTALL Greenplum but not configure and run it EXPOSE 5432 -# Environment variables - change these for version update -ENV CMAKE_FILE=cmake-3.5.2.tar.gz CMAKE_PATH=v3.5/cmake-3.5.2.tar.gz GCC_FILE=gcc-7.3.0.tar.gz GCC_PATH=gcc-7.3.0/gcc-7.3.0.tar.gz -ENV CMAKE_DIRECTORY=cmake-3.5.2/ GCC_DIRECTORY=gcc-7.3.0/ -ENV GPDB_FILE=6.0.0.zip GPDB_PATH=6.0.0/6.0.0.zip GPDB_DIRECTORY=gpdb-6.0.0 - # Compile arg - automatic ARG COMPILE_THREAD="lscpu | grep ^CPU\(s\): | awk '{print \$2}'" # Install required packages from yum, use Huawei Cloud Mirror -RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak && mkdir /etc/yum.repos.d +RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak \ + && mkdir /etc/yum.repos.d COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. -RUN yum clean all && yum makecache && yum install -y curl-devel bzip2-devel python-devel openssl-devel readline-devel perl-ExtUtils-Embed libxml2-devel openidap-devel pam pam-devel perl-devel apr-devel libevent-devel libyaml libyaml-devel libffi-devel bison flex flex-devel gcc gcc-c++ make wget libedit-devel bison unzip zip git autoconf libtool libtool-devel automake +RUN yum clean all \ + && yum makecache \ + && yum install -y curl-devel bzip2-devel python-devel openssl-devel readline-devel perl-ExtUtils-Embed libxml2-devel openidap-devel pam pam-devel perl-devel apr-devel libevent-devel libyaml libyaml-devel libffi-devel bison flex flex-devel gcc gcc-c++ make wget libedit-devel bison unzip zip git autoconf libtool libtool-devel automake # Install Python libraries WORKDIR /home -RUN wget "https://github.com/pypa/setuptools/archive/v29.0.1.zip" && unzip v29.0.1.zip && cd setuptools-29.0.1 && python bootstrap.py && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/c4/b8/3512f0e93e0db23a71d82485ba256071ebef99b227351f0f5540f744af41/psutil-5.7.0.tar.gz" && tar -zxf psutil-5.7.0.tar.gz && cd psutil-5.7.0 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/98/8a/defa5215d2dcf98cc80f4783e951a8356e38f352f7a169ae11670dcb1f25/pbr-5.4.4.tar.gz" && tar -zxf pbr-5.4.4.tar.gz && cd pbr-5.4.4 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/17/47/72cb04a58a35ec495f96984dddb48232b551aafb95bde614605b754fe6f7/lockfile-0.12.2.tar.gz" && tar -zxf lockfile-0.12.2.tar.gz && cd lockfile-0.12.2 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/0f/86/e19659527668d70be91d0369aeaa055b4eb396b0f387a4f92293a20035bd/pycparser-2.20.tar.gz" && tar -zxf pycparser-2.20.tar.gz && cd pycparser-2.20 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/05/54/3324b0c46340c31b909fcec598696aaec7ddc8c18a63f2db352562d3354c/cffi-1.14.0.tar.gz" && tar -zxf cffi-1.14.0.tar.gz && cd cffi-1.14.0 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/21/9f/b251f7f8a76dec1d6651be194dfba8fb8d7781d10ab3987190de8391d08e/six-1.14.0.tar.gz" && tar -zxf six-1.14.0.tar.gz && cd six-1.14.0 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/fa/aa/025a3ab62469b5167bc397837c9ffc486c42a97ef12ceaa6699d8f5a5416/bcrypt-3.1.7.tar.gz" && tar -zxf bcrypt-3.1.7.tar.gz && cd bcrypt-3.1.7 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/61/ab/2ac6dea8489fa713e2b4c6c5b549cc962dd4a842b5998d9e80cf8440b7cd/PyNaCl-1.3.0.tar.gz" && tar -zxf PyNaCl-1.3.0.tar.gz && cd PyNaCl-1.3.0 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/b9/9a/3e9da40ea28b8210dd6504d3fe9fe7e013b62bf45902b458d1cdc3c34ed9/ipaddress-1.0.23.tar.gz" && tar -zxf ipaddress-1.0.23.tar.gz && cd ipaddress-1.0.23 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/11/c4/2da1f4952ba476677a42f25cd32ab8aaf0e1c0d0e00b89822b835c7e654c/enum34-1.1.10.tar.gz" && tar -zxf enum34-1.1.10.tar.gz && cd enum34-1.1.10 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/be/60/da377e1bed002716fb2d5d1d1cab720f298cb33ecff7bf7adea72788e4e4/cryptography-2.8.tar.gz" && tar -zxf cryptography-2.8.tar.gz && cd cryptography-2.8 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/ac/15/4351003352e11300b9f44a13576bff52dcdc6e4a911129c07447bda0a358/paramiko-2.7.1.tar.gz" && tar -zxf paramiko-2.7.1.tar.gz && cd paramiko-2.7.1 && python setup.py install -RUN wget "https://files.pythonhosted.org/packages/60/a7/666cb415b0f5d8d5c99f145e03a6005220090d7b77637871ac52c2cabcba/epydoc-3.0.1.tar.gz" && tar -zxf epydoc-3.0.1.tar.gz && cd epydoc-3.0.1 && python setup.py install +RUN wget "https://github.com/pypa/setuptools/archive/v29.0.1.zip" \ + && unzip v29.0.1.zip \ + && cd setuptools-29.0.1 \ + && python bootstrap.py \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/c4/b8/3512f0e93e0db23a71d82485ba256071ebef99b227351f0f5540f744af41/psutil-5.7.0.tar.gz" \ + && tar -zxf psutil-5.7.0.tar.gz \ + && cd psutil-5.7.0 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/98/8a/defa5215d2dcf98cc80f4783e951a8356e38f352f7a169ae11670dcb1f25/pbr-5.4.4.tar.gz" \ + && tar -zxf pbr-5.4.4.tar.gz \ + && cd pbr-5.4.4 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/17/47/72cb04a58a35ec495f96984dddb48232b551aafb95bde614605b754fe6f7/lockfile-0.12.2.tar.gz" \ + && tar -zxf lockfile-0.12.2.tar.gz \ + && cd lockfile-0.12.2 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/0f/86/e19659527668d70be91d0369aeaa055b4eb396b0f387a4f92293a20035bd/pycparser-2.20.tar.gz" \ + && tar -zxf pycparser-2.20.tar.gz \ + && cd pycparser-2.20 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/05/54/3324b0c46340c31b909fcec598696aaec7ddc8c18a63f2db352562d3354c/cffi-1.14.0.tar.gz" \ + && tar -zxf cffi-1.14.0.tar.gz \ + && cd cffi-1.14.0 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/21/9f/b251f7f8a76dec1d6651be194dfba8fb8d7781d10ab3987190de8391d08e/six-1.14.0.tar.gz" \ + && tar -zxf six-1.14.0.tar.gz \ + && cd six-1.14.0 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/fa/aa/025a3ab62469b5167bc397837c9ffc486c42a97ef12ceaa6699d8f5a5416/bcrypt-3.1.7.tar.gz" \ + && tar -zxf bcrypt-3.1.7.tar.gz \ + && cd bcrypt-3.1.7 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/61/ab/2ac6dea8489fa713e2b4c6c5b549cc962dd4a842b5998d9e80cf8440b7cd/PyNaCl-1.3.0.tar.gz" \ + && tar -zxf PyNaCl-1.3.0.tar.gz \ + && cd PyNaCl-1.3.0 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/b9/9a/3e9da40ea28b8210dd6504d3fe9fe7e013b62bf45902b458d1cdc3c34ed9/ipaddress-1.0.23.tar.gz" \ + && tar -zxf ipaddress-1.0.23.tar.gz \ + && cd ipaddress-1.0.23 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/11/c4/2da1f4952ba476677a42f25cd32ab8aaf0e1c0d0e00b89822b835c7e654c/enum34-1.1.10.tar.gz" \ + && tar -zxf enum34-1.1.10.tar.gz \ + && cd enum34-1.1.10 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/be/60/da377e1bed002716fb2d5d1d1cab720f298cb33ecff7bf7adea72788e4e4/cryptography-2.8.tar.gz" \ + && tar -zxf cryptography-2.8.tar.gz \ + && cd cryptography-2.8 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/ac/15/4351003352e11300b9f44a13576bff52dcdc6e4a911129c07447bda0a358/paramiko-2.7.1.tar.gz" \ + && tar -zxf paramiko-2.7.1.tar.gz \ + && cd paramiko-2.7.1 \ + && python setup.py install +RUN wget "https://files.pythonhosted.org/packages/60/a7/666cb415b0f5d8d5c99f145e03a6005220090d7b77637871ac52c2cabcba/epydoc-3.0.1.tar.gz" \ + && tar -zxf epydoc-3.0.1.tar.gz \ + && cd epydoc-3.0.1 \ + && python setup.py install # Update cmake to proper version -RUN wget "https://cmake.org/files/$CMAKE_PATH" && tar -zxf $CMAKE_FILE -RUN cd $CMAKE_DIRECTORY && ./bootstrap && make -j$(eval ${COMPILE_THREAD}) && make -j$(eval ${COMPILE_THREAD}) install -RUN yum remove cmake -y && ln -s /usr/local/bin/cmake /usr/bin +RUN wget "https://cmake.org/files/v3.5/cmake-3.5.2.tar.gz" \ + && tar -zxf cmake-3.5.2.tar.gz \ + && cd cmake-3.5.2/ \ + && ./bootstrap \ + && make -j$(eval ${COMPILE_THREAD}) \ + && make -j$(eval ${COMPILE_THREAD}) install \ + && yum remove cmake -y \ + && ln -s /usr/local/bin/cmake /usr/bin # Install Other libraries -RUN wget "https://github.com/facebook/zstd/archive/v1.4.3.zip" && unzip v1.4.3.zip && cd zstd-1.4.3 && make && make install && ln -s /usr/local/lib/libzstd.so.1.4.3 /usr/lib64/libzstd.so.1 -RUN wget "https://github.com/greenplum-db/gp-xerces/archive/v3.1.2-p1.zip" && unzip v3.1.2-p1.zip && cd gp-xerces-3.1.2-p1 && ./configure && make -j$(eval ${COMPILE_THREAD}) && make install -RUN wget "https://github.com/skvadrik/re2c/archive/2.0.3.zip" && unzip 2.0.3.zip && cd re2c-2.0.3 && ./autogen.sh && ./configure && make -j$(eval ${COMPILE_THREAD}) && make install -RUN wget "https://github.com/ninja-build/ninja/archive/v1.10.1.zip" && unzip v1.10.1.zip && cd ninja-1.10.1 && ./configure.py --bootstrap && cp ninja /usr/bin/ -RUN wget "https://github.com/greenplum-db/gporca/archive/v3.65.3.zip" && unzip v3.65.3.zip && cd gporca-3.65.3 && cmake -GNinja -H. -Bbuild && sed -i '/GPOS_CPL_ASSERT(!"Backtrace is not supported for this platform");/ s#^#//#' libgpos/src/common/CStackDescriptor.cpp && ninja install -C build && echo /usr/local/lib >> /etc/ld.so.conf && ldconfig - -# Get PgSQL source code -RUN wget "https://github.com/greenplum-db/gpdb/releases/download/$GPDB_PATH" && unzip $GPDB_FILE -# Build and install -RUN cd $GPDB_DIRECTORY && ./configure --with-perl --with-python --with-libxml --prefix=/usr/local/gpdb && make -j$(eval ${COMPILE_THREAD}) && make install +RUN wget "https://github.com/facebook/zstd/archive/v1.4.3.zip" \ + && unzip v1.4.3.zip \ + && cd zstd-1.4.3 \ + && make \ + && make install \ + && ln -s /usr/local/lib/libzstd.so.1.4.3 /usr/lib64/libzstd.so.1 +RUN wget "https://github.com/greenplum-db/gp-xerces/archive/v3.1.2-p1.zip" \ + && unzip v3.1.2-p1.zip \ + && cd gp-xerces-3.1.2-p1 \ + && ./configure \ + && make -j$(eval ${COMPILE_THREAD}) \ + && make install +RUN wget "https://github.com/skvadrik/re2c/archive/2.0.3.zip" \ + && unzip 2.0.3.zip \ + && cd re2c-2.0.3 \ + && ./autogen.sh \ + && ./configure \ + && make -j$(eval ${COMPILE_THREAD}) \ + && make install +RUN wget "https://github.com/ninja-build/ninja/archive/v1.10.1.zip" \ + && unzip v1.10.1.zip \ + && cd ninja-1.10.1 \ + && ./configure.py --bootstrap \ + && cp ninja /usr/bin/ +RUN wget "https://github.com/greenplum-db/gporca/archive/v3.65.3.zip" \ + && unzip v3.65.3.zip \ + && cd gporca-3.65.3 \ + && cmake -GNinja -H. -Bbuild \ + && sed -i '/GPOS_CPL_ASSERT(!"Backtrace is not supported for this platform");/ s#^#//#' libgpos/src/common/CStackDescriptor.cpp \ + && ninja install -C build \ + && echo /usr/local/lib >> /etc/ld.so.conf \ + && ldconfig + +# Get rpm bug fix files +RUN wget "https://mirrors.huaweicloud.com/kunpeng/archive/kunpeng_solution/database/patch/rpm-bug.zip" \ + && unzip rpm-bug.zip + +RUN yum install -y rpm-build + +# Get Greenplum source code, build and install +WORKDIR /root +RUN wget "https://github.com/greenplum-db/gpdb/releases/download/6.0.0/6.0.0.zip" \ + && mkdir -p rpmbuild/{BUILD,SOURCES,SPECS,RPMS} \ + && mv 6.0.0.zip rpmbuild/SOURCES/gpdb-6.0.0.zip \ + && mv /home/rpm-bug/* rpmbuild/SOURCES/. +COPY greenplum6.0.0.spec rpmbuild/SPECS/. +RUN rpmbuild -bb rpmbuild/SPECS/greenplum6.0.0.spec \ + && mkdir -p /root/output \ + && cp rpmbuild/RPMS/aarch64/gpdb-6.0.0-1.el7.aarch64.rpm output/. diff --git a/DBMS/CentOS7.6.1810/greenplum/6.0.0/greenplum6.0.0.spec b/DBMS/CentOS7.6.1810/greenplum/6.0.0/greenplum6.0.0.spec new file mode 100644 index 0000000000000000000000000000000000000000..9e8ef352632489f5d1cf0fa761a1c849e35a7074 --- /dev/null +++ b/DBMS/CentOS7.6.1810/greenplum/6.0.0/greenplum6.0.0.spec @@ -0,0 +1,114 @@ +Name: gpdb +Version: 6.0.0 +Release: 1%{?dist} + +Group: applications/database +License: greenplum +URL: https://github.com/greenplum-db/gpdb/archive/gpdb-6.0.0.zip +Source: %{name}-%{version}.zip + +Autoreq: no +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +prefix: /usr/local/gpdb +Summary: greenplum server 6.0.0 + +%description + +%define GPDB_USER gpadmin +%define GPDB_GROUP gpadmin +%define __os_install_post %{nil} +%define __debug_install_post \ +%{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}" \ +%{nil} + +%prep +%setup -q -n %{name}-%{version} + +%build +./configure --with-perl --with-python --with-libxml --prefix=%{prefix} +make -j `cat /proc/cpuinfo | grep processor | wc -l` + +%install +make -j `cat /proc/cpuinfo | grep processor | wc -l` install +mkdir -p $RPM_BUILD_ROOT/usr/local/lib +mkdir -p $RPM_BUILD_ROOT/usr/lib64/python2.7/site-packages +mkdir -p $RPM_BUILD_ROOT/usr/lib/python2.7/site-packages +mv /usr/local/gpdb $RPM_BUILD_ROOT/usr/local +cp -r /usr/local/lib/* $RPM_BUILD_ROOT/usr/local/lib + +cp -r /usr/lib64/python2.7/site-packages/psutil-5.7.0-py2.7-linux-aarch64.egg/psutil $RPM_BUILD_ROOT/usr/lib64/python2.7/site-packages/psutil +cp -r /usr/lib64/python2.7/site-packages/cryptography-2.8-py2.7-linux-aarch64.egg/cryptography $RPM_BUILD_ROOT/usr/lib64/python2.7/site-packages/cryptography +cp -r /usr/lib64/python2.7/site-packages/cffi-1.14.0-py2.7-linux-aarch64.egg/cffi $RPM_BUILD_ROOT/usr/lib64/python2.7/site-packages/cffi +cp -r /usr/lib64/python2.7/site-packages/bcrypt-3.1.7-py2.7-linux-aarch64.egg/bcrypt $RPM_BUILD_ROOT/usr/lib64/python2.7/site-packages/bcrypt +cp -r /usr/lib64/python2.7/site-packages/PyNaCl-1.3.0-py2.7-linux-aarch64.egg/nacl $RPM_BUILD_ROOT/usr/lib64/python2.7/site-packages/nacl +cp -r /usr/lib64/python2.7/site-packages/cffi-1.14.0-py2.7-linux-aarch64.egg/_cffi_backend.so $RPM_BUILD_ROOT/usr/lib64/python2.7/site-packages/. +cp -r /usr/lib/python2.7/site-packages/lockfile $RPM_BUILD_ROOT/usr/lib/python2.7/site-packages/lockfile +cp -r /usr/lib/python2.7/site-packages/paramiko-2.7.1-py2.7.egg $RPM_BUILD_ROOT/usr/lib/python2.7/site-packages/paramiko +cp -r /usr/lib/python2.7/site-packages/six* $RPM_BUILD_ROOT/usr/lib/python2.7/site-packages/. +cp -r /usr/lib/python2.7/site-packages/ipaddress* $RPM_BUILD_ROOT/usr/lib/python2.7/site-packages/. +cp -r /usr/lib/python2.7/site-packages/enum* $RPM_BUILD_ROOT/usr/lib/python2.7/site-packages/enum +cp -r /usr/lib/python2.7/site-packages/pbr $RPM_BUILD_ROOT/usr/lib/python2.7/site-packages/pbr +cp -r /usr/lib/python2.7/site-packages/pycparser $RPM_BUILD_ROOT/usr/lib/python2.7/site-packages/pycparser + +cp %{_sourcedir}/libatomic.so.1 $RPM_BUILD_ROOT/usr/local/lib +cp %{_sourcedir}/libstdc++.so.6.0.24 $RPM_BUILD_ROOT/usr/local/lib + +%clean +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/* + +%files +%defattr(-, %{GPDB_USER}, %{GPDB_GROUP}) +%attr(755, %{GPDB_USER}, %{GPDB_GROUP}) %{prefix}/* +%attr(755, root, root) /usr/local/lib/* +%attr(755, root, root) /usr/lib64/python2.7/site-packages/psutil +%attr(755, root, root) /usr/lib64/python2.7/site-packages/cryptography +%attr(755, root, root) /usr/lib64/python2.7/site-packages/cffi* +%attr(755, root, root) /usr/lib64/python2.7/site-packages/bcrypt +%attr(755, root, root) /usr/lib64/python2.7/site-packages/nacl +%attr(755, root, root) /usr/lib64/python2.7/site-packages/_cffi_backend.so +%attr(755, root, root) /usr/lib/python2.7/site-packages/lockfile +%attr(755, root, root) /usr/lib/python2.7/site-packages/paramiko +%attr(755, root, root) /usr/lib/python2.7/site-packages/six* +%attr(755, root, root) /usr/lib/python2.7/site-packages/ipaddress* +%attr(755, root, root) /usr/lib/python2.7/site-packages/enum +%attr(755, root, root) /usr/lib/python2.7/site-packages/pbr +%attr(755, root, root) /usr/lib/python2.7/site-packages/pycparser + +%pre +if ! id %{GPDB_USER} > /dev/null 2>&1;then + groupadd %{GPDB_GROUP} + useradd -g %{GPDB_GROUP} %{GPDB_USER} +fi + +%post +if [ ! -f /usr/lib64/libatomic.so.1 ];then + cp -f /usr/local/lib/libatomic.so.1 /usr/lib64/ +else + ver1=`ls -l /usr/lib64/libatomic.so.1|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver11=`echo -e "${ver1}\n1.1.99"|sort -V|tail -1` + if [ "${ver11}" = "1.1.99" ];then + cp -f /usr/local/lib/libatomic.so.1 /usr/lib64/ + fi +fi +if [ ! -f /usr/lib64/libstdc++.so.6 ];then + cp -f /usr/local/lib/libstdc++.so.6.0.24 /usr/lib64/ + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 +else + ver2=`ls -l /usr/lib64/libstdc++.so.6|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver22=`echo -e "${ver2}\n6.0.23"|sort -V|tail -1` + if [ "${ver22}" = "6.0.23" ];then + cp -f /usr/local/lib/libstdc++.so.6.0.24 /usr/lib64 + rm -f /usr/lib64/libstdc++.so.6 + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 + fi +fi + +%preun + +%postun +rm -rf %{prefix} +userdel -r {GPDB_USER} >/dev/null 2>&1 + +%changelog + diff --git a/Web/CentOS7.6.1810/CentOS-AltArch-7.repo b/DBMS/CentOS7.6.1810/mariadb/10.3.8/CentOS-AltArch-7.repo similarity index 100% rename from Web/CentOS7.6.1810/CentOS-AltArch-7.repo rename to DBMS/CentOS7.6.1810/mariadb/10.3.8/CentOS-AltArch-7.repo diff --git a/DBMS/CentOS7.6.1810/mariadb/10.3.8/Dockerfile-mariadb-10.3.8 b/DBMS/CentOS7.6.1810/mariadb/10.3.8/Dockerfile-mariadb-10.3.8 new file mode 100644 index 0000000000000000000000000000000000000000..218d8c65f9c17a7b1421585fb265bece7ef58b7d --- /dev/null +++ b/DBMS/CentOS7.6.1810/mariadb/10.3.8/Dockerfile-mariadb-10.3.8 @@ -0,0 +1,27 @@ +# Starting from CentOS 7.6.1810 aarch64 +FROM arm64v8/centos:1810 + +# Install required packages from yum, use Huawei Cloud Mirror +RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak \ + && mkdir /etc/yum.repos.d +COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. +RUN yum clean all \ + && yum makecache \ + && yum -y install readline-devel zlib-devel openssl* cmake git gcc* perl* bison wget unzip rpm-build + +# Get rpm bug fix files +WORKDIR /home +RUN wget "https://mirrors.huaweicloud.com/kunpeng/archive/kunpeng_solution/database/patch/rpm-bug.zip" \ + && unzip rpm-bug.zip + +# Get MariaDB source code, build and install +WORKDIR /root +RUN wget "https://archive.mariadb.org//mariadb-10.3.8/source/mariadb-10.3.8.tar.gz" \ + && mkdir -p rpmbuild/{BUILD,SOURCES,SPECS,RPMS} \ + && mv mariadb-10.3.8.tar.gz rpmbuild/SOURCES/. \ + && mv /home/rpm-bug/* rpmbuild/SOURCES/. +COPY mariadb10.3.8.spec rpmbuild/SPECS/. +RUN rpmbuild -bb rpmbuild/SPECS/mariadb10.3.8.spec \ + && mkdir -p /root/output \ + && cp rpmbuild/RPMS/aarch64/mariadb-10.3.8-1.el7.aarch64.rpm output/. + diff --git a/DBMS/CentOS7.6.1810/mariadb/10.3.8/mariadb10.3.8.spec b/DBMS/CentOS7.6.1810/mariadb/10.3.8/mariadb10.3.8.spec new file mode 100644 index 0000000000000000000000000000000000000000..4abd8c9502275830214f775492f13e016769ceb3 --- /dev/null +++ b/DBMS/CentOS7.6.1810/mariadb/10.3.8/mariadb10.3.8.spec @@ -0,0 +1,104 @@ +Name: mariadb +Version: 10.3.8 +Release: 1%{?dist} + +Group: applications/database +License: Mariadb +URL: http://mariadb.org +Source: %{name}-%{version}.tar.gz + +Autoreq: no +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +prefix: /usr/local/mariadb +Summary: A community developed branch of MySQL + +%description + +%define MYSQL_USER mysql +%define MYSQL_GROUP mysql +%define __os_install_post %{nil} +%define __debug_install_post \ +%{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}" \ +%{nil} + +%prep +%setup -q -n %{name}-%{version} + +%build +cmake \ +-DCMAKE_INSTALL_PREFIX=%{prefix} \ +-DMYSQL_DATADIR=/data/mariadb/data \ +-DSYSCONFDIR=/etc \ +-DWITHOUT_TOKUDB=1 \ +-DWITH_INNOBASE_STORAGE_ENGINE=1 \ +-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ +-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ +-DWITH_READLINE=1 \ +-DWITH_SSL=system \ +-DWITH_ZLIB=system \ +-DWITH_LOBWRAP=0 \ +-DMYSQL_UNIX_ADDR=/data/mariadb/run/mysql.sock \ +-DDEFAULT_CHARSET=utf8 \ +-DDEFAULT_COLLATION=utf8_general_ci + +make -j `cat /proc/cpuinfo | grep processor | wc -l` + +%install +make -j `cat /proc/cpuinfo | grep processor | wc -l` DESTDIR=$RPM_BUILD_ROOT install +cp %{_sourcedir}/libatomic.so.1 $RPM_BUILD_ROOT/usr/local/mariadb/lib +cp %{_sourcedir}/libstdc++.so.6.0.24 $RPM_BUILD_ROOT/usr/local/mariadb/lib + +%clean +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/* + +%files +%defattr(-, %{MYSQL_USER}, %{MYSQL_GROUP}) +%attr(755, %{MYSQL_USER}, %{MYSQL_GROUP}) %{prefix}/* + +%pre +if ! id %{MYSQL_USER} > /dev/null 2>&1;then + groupadd %{MYSQL_GROUP} + useradd -g %{MYSQL_GROUP} %{MYSQL_USER} +fi + +%post + +if [ -f %{prefix}/support-files/mysql.server > /dev/null 2>&1 ] && [ ! -f %{_initddir}/mariadb > /dev/null 2>&1 ];then + cp %{prefix}/support-files/mysql.server %{_initddir}/mariadb + chmod +x %{_initddir}/mariadb + chkconfig --level 2345 mariadb on +fi +if [ ! -f /usr/lib64/libatomic.so.1 ];then + cp -f /usr/local/mariadb/lib/libatomic.so.1 /usr/lib64/ +else + ver1=`ls -l /usr/lib64/libatomic.so.1|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver11=`echo -e "${ver1}\n1.1.99"|sort -V|tail -1` + if [ "${ver11}" = "1.1.99" ];then + cp -f /usr/local/mariadb/lib/libatomic.so.1 /usr/lib64/ + fi +fi +if [ ! -f /usr/lib64/libstdc++.so.6 ];then + cp -f /usr/local/mariadb/lib/libstdc++.so.6.0.24 /usr/lib64/ + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 +else + ver2=`ls -l /usr/lib64/libstdc++.so.6|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver22=`echo -e "${ver2}\n6.0.23"|sort -V|tail -1` + if [ "${ver22}" = "6.0.23" ];then + cp -f /usr/local/mariadb/lib/libstdc++.so.6.0.24 /usr/lib64 + rm -f /usr/lib64/libstdc++.so.6 + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 + fi +fi + +%preun +if [ -f %{_initddir}/mariadb ];then + mv %{_initddir}/mariadb %{_initddir}/mariadb.rpmold +fi + +%postun +rm -rf %{prefix} +userdel -r {MYSQL_USER} >/dev/null 2>&1 + +%changelog + diff --git a/DBMS/CentOS7.6.1810/mongodb/4.0.12/CentOS-AltArch-7.repo b/DBMS/CentOS7.6.1810/mongodb/4.0.12/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/DBMS/CentOS7.6.1810/mongodb/4.0.12/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/DBMS/CentOS7.6.1810/Dockerfile-mongodb-4.0.12 b/DBMS/CentOS7.6.1810/mongodb/4.0.12/Dockerfile-mongodb-4.0.12 similarity index 53% rename from DBMS/CentOS7.6.1810/Dockerfile-mongodb-4.0.12 rename to DBMS/CentOS7.6.1810/mongodb/4.0.12/Dockerfile-mongodb-4.0.12 index 00883b43c27864dd7411a39d0ef677bdf66a51e7..1f7202dfabeeb9e800328953715276925e4bf9b0 100644 --- a/DBMS/CentOS7.6.1810/Dockerfile-mongodb-4.0.12 +++ b/DBMS/CentOS7.6.1810/mongodb/4.0.12/Dockerfile-mongodb-4.0.12 @@ -13,7 +13,7 @@ RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak \ COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. RUN yum clean all \ && yum makecache \ - && yum -y install git make gcc gcc-c++ libyaml libyaml-devel python-setuptools libcurl-devel python-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel libpcap-dev* wget unzip zip + && yum -y install git make gcc gcc-c++ libyaml libyaml-devel python-setuptools libcurl-devel python-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel libpcap-dev* wget unzip zip rpm-build # Update cmake and gcc to proper version WORKDIR /home @@ -50,35 +50,15 @@ RUN git config --global http.sslVerify false \ && cd cheetah3 \ && python setup.py install -# Environment variables for go env -ENV PATH=$PATH:/usr/local/go/bin GOROOT=/usr/local/go - # Get MongoDB source code, build and install RUN wget "https://github.com/mongodb/mongo/archive/r4.0.12.tar.gz" \ - && tar -zxf r4.0.12.tar.gz \ - && cd mongo-r4.0.12/ \ - && python2 buildscripts/scons.py MONGO_VERSION=4.0.12 all CFLAGS="-march=armv8-a+crc -mtune=generic" -j$(eval ${COMPILE_THREAD}) --disable-warnings-as-errors \ - && mkdir -p /usr/local/mongo \ - && python2 buildscripts/scons.py MONGO_VERSION=4.0.12 --prefix=/usr/local/mongo --disable-warnings-as-errors CFLAGS="-march=armv8-a+crc" install -j$(eval ${COMPILE_THREAD}) \ - && cd /usr/local/mongo/bin/ \ - && strip mongos \ - && strip mongod \ - && strip mongo - -# Get MongoDB Tools, gopacket, build -RUN wget https://golang.google.cn/dl/go1.13.5.linux-arm64.tar.gz --no-check-certificate \ - && tar -C /usr/local -zxf go1.13.5.linux-arm64.tar.gz \ - && wget https://github.com/mongodb/mongo-tools/archive/r4.0.6.tar.gz --no-check-certificate \ - && tar -zxf r4.0.6.tar.gz \ - && chmod +x mongo-tools-r4.0.6/set_goenv.sh \ - && source mongo-tools-r4.0.6/set_goenv.sh \ - && mkdir -p mongodb-tools-4.0.6/src/github.com/mongodb \ - && mv mongo-tools-r4.0.6 mongodb-tools-4.0.6/src/github.com/mongodb/mongo-tools \ - && wget https://github.com/google/gopacket/archive/master.zip --no-check-certificate \ - && unzip master.zip \ - && rm -rf mongodb-tools-4.0.6/src/github.com/mongodb/mongo-tools/vendor/github.com/google/gopacket \ - && mv gopacket-master mongodb-tools-4.0.6/src/github.com/mongodb/mongo-tools/vendor/github.com/google/gopacket \ - && mkdir -p /opt/mongodbtoolchain/v2/bin \ - && ln -s /usr/bin/gcc /opt/mongodbtoolchain/v2/bin/aarch64-mongodb-linux-gcc \ - && cd mongodb-tools-4.0.6/src/github.com/mongodb/mongo-tools \ - && ./build.sh + && mkdir -p /root/rpmbuild/{BUILD,SOURCES,SPECS,RPMS} \ + && mv r4.0.12.tar.gz /root/rpmbuild/SOURCES/mongo-r4.0.12.tar.gz \ + && wget "https://mirrors.huaweicloud.com/kunpeng/archive/kunpeng_solution/database/patch/rpm-bug.zip" \ + && unzip rpm-bug.zip \ + && mv rpm-bug/* /root/rpmbuild/SOURCES/. +WORKDIR /root +COPY mongodb4.0.12.spec rpmbuild/SPECS/. +RUN rpmbuild -bb rpmbuild/SPECS/mongodb4.0.12.spec \ + && mkdir -p /root/output \ + && cp rpmbuild/RPMS/aarch64/mongo-4.0.12-1.el7.aarch64.rpm output/. diff --git a/DBMS/CentOS7.6.1810/mongodb/4.0.12/mongodb4.0.12.spec b/DBMS/CentOS7.6.1810/mongodb/4.0.12/mongodb4.0.12.spec new file mode 100644 index 0000000000000000000000000000000000000000..7ec463832dfea5936a75e019a1dc032fe2d614d3 --- /dev/null +++ b/DBMS/CentOS7.6.1810/mongodb/4.0.12/mongodb4.0.12.spec @@ -0,0 +1,85 @@ +Name: mongo +Version: 4.0.12 +Release: 1%{?dist} + +Group: applications/database +License: mongo +URL: https://www.mongodb.com +Source: %{name}-r%{version}.tar.gz + +Autoreq: no +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +prefix: /usr/local/mongo +Summary: mongo server 4.0.12-1 + +%description + +%define MONGO_USER mongo +%define MONGO_GROUP mongo +%define __os_install_post %{nil} +%define __debug_install_post \ +%{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}" \ +%{nil} + +%prep +%setup -q -n %{name}-r%{version} + +%build +python2 buildscripts/scons.py MONGO_VERSION=%{version} all CFLAGS="-march=armv8-a+crc -mtune=generic" -j`cat /proc/cpuinfo | grep processor | wc -l` --disable-warnings-as-errors + +%install +python2 buildscripts/scons.py MONGO_VERSION=%{version} --prefix=$RPM_BUILD_ROOT%{prefix} --disable-warnings-as-errors CFLAGS='-march=armv8-a+crc' install -j`cat /proc/cpuinfo | grep processor | wc -l` + +cd /root/rpmbuild/BUILDROOT/mongo-%{version}-1%{?dist}.aarch64%{prefix}/bin +strip mongos +strip mongod +strip mongo + +cp %{_sourcedir}/libatomic.so.1 $RPM_BUILD_ROOT%{prefix}/bin +cp %{_sourcedir}/libstdc++.so.6.0.24 $RPM_BUILD_ROOT%{prefix}/bin + +%clean +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/* + +%files +%defattr(-, %{MONGO_USER}, %{MONGO_GROUP}) +%attr(755, %{MONGO_USER}, %{MONGO_GROUP}) %{prefix}/* + +%pre +if ! id %{MONGO_USER} > /dev/null 2>&1;then + groupadd %{MONGO_GROUP} + useradd -g %{MONGO_GROUP} %{MONGO_USER} +fi + +%post +if [ ! -f /usr/lib64/libatomic.so.1 ];then + cp -f %{prefix}/bin/libatomic.so.1 /usr/lib64/ +else + ver1=`ls -l /usr/lib64/libatomic.so.1|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver11=`echo -e "${ver1}\n1.1.99"|sort -V|tail -1` + if [ "${ver11}" = "1.1.99" ];then + cp -f %{prefix}/bin/libatomic.so.1 /usr/lib64/ + fi +fi +if [ ! -f /usr/lib64/libstdc++.so.6 ];then + cp -f %{prefix}/bin/libstdc++.so.6.0.24 /usr/lib64/ + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 +else + ver2=`ls -l /usr/lib64/libstdc++.so.6|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver22=`echo -e "${ver2}\n6.0.23"|sort -V|tail -1` + if [ "${ver22}" = "6.0.23" ];then + cp -f %{prefix}/bin/libstdc++.so.6.0.24 /usr/lib64 + rm -f /usr/lib64/libstdc++.so.6 + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 + fi +fi + +%preun + +%postun +rm -rf %{prefix} +userdel -r {MONGO_USER} >/dev/null 2>&1 + +%changelog + diff --git a/DBMS/CentOS7.6.1810/mysql/5.7.27/CentOS-AltArch-7.repo b/DBMS/CentOS7.6.1810/mysql/5.7.27/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/DBMS/CentOS7.6.1810/mysql/5.7.27/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/DBMS/CentOS7.6.1810/Dockerfile-mysql-5.7.27 b/DBMS/CentOS7.6.1810/mysql/5.7.27/Dockerfile-mysql-5.7.27 similarity index 67% rename from DBMS/CentOS7.6.1810/Dockerfile-mysql-5.7.27 rename to DBMS/CentOS7.6.1810/mysql/5.7.27/Dockerfile-mysql-5.7.27 index b7e514798ed3b875a238681a448455747b934782..599b4bca30e2a1bca6bb54ec09912388f5f30027 100644 --- a/DBMS/CentOS7.6.1810/Dockerfile-mysql-5.7.27 +++ b/DBMS/CentOS7.6.1810/mysql/5.7.27/Dockerfile-mysql-5.7.27 @@ -13,7 +13,7 @@ RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak \ COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. RUN yum clean all \ && yum makecache \ - && yum -y install ncurses ncurses-devel libaio-devel openssl openssl-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel gcc gcc-c++ cmake net-tools wget + && yum -y install ncurses ncurses-devel libaio-devel openssl openssl-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel zlib-devel gcc gcc-c++ cmake bison net-tools wget rpm-build unzip # Update cmake and gcc to proper version WORKDIR /home @@ -34,13 +34,22 @@ RUN wget "https://cmake.org/files/v3.5/cmake-3.5.2.tar.gz" \ # Get MySQL source code, fix 'prctl' was not declared in this scope RUN wget "https://cdn.mysql.com/archives/mysql-5.7/mysql-boost-5.7.27.tar.gz" \ - && tar -zxf mysql-boost-5.7.27.tar.gz \ - && mkdir -p /data/mysql \ + && tar -xzf mysql-boost-5.7.27.tar.gz \ && cp /usr/include/sys/prctl.h mysql-5.7.27/include/. \ - && sed -i "/#include \"mysqld_daemon.h\"/a#include \"prctl.h\"" mysql-5.7.27/sql/mysqld.cc -# Compile and install -RUN cd mysql-5.7.27/ \ - && cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DENABLE_DTRACE=0 -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci -DWITH_EMBEDDED_SERVER=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=boost/boost_1_59_0 \ - && make -j$(eval ${COMPILE_THREAD}) \ - && make install \ - && /usr/local/mysql/bin/mysql --version + && sed -i "/#include \"mysqld_daemon.h\"/a#include \"prctl.h\"" mysql-5.7.27/sql/mysqld.cc \ + && tar -czf mysql-boost-5.7.27.tar.gz mysql-5.7.27/ +# Get rpm bug fix files +RUN wget "https://mirrors.huaweicloud.com/kunpeng/archive/kunpeng_solution/database/patch/rpm-bug.zip" \ + && unzip rpm-bug.zip + +# Construct npm build env and construct +WORKDIR /root +RUN mkdir -p rpmbuild/{BUILD,SOURCES,SPECS,RPMS} \ + && mv /home/mysql-boost-5.7.27.tar.gz rpmbuild/SOURCES/. \ + && mv /home/rpm-bug/* rpmbuild/SOURCES/. +COPY my.cnf rpmbuild/SOURCES/. +COPY mysql5.7.27.spec rpmbuild/SPECS/. +RUN rpmbuild -bb rpmbuild/SPECS/mysql5.7.27.spec \ + && mkdir -p /root/output \ + && cp rpmbuild/RPMS/aarch64/mysql-5.7.27-1.el7.aarch64.rpm output/. + diff --git a/DBMS/CentOS7.6.1810/mysql/5.7.27/my.cnf b/DBMS/CentOS7.6.1810/mysql/5.7.27/my.cnf new file mode 100644 index 0000000000000000000000000000000000000000..0d492786a2886f0e410df76b33747a0a4005499d --- /dev/null +++ b/DBMS/CentOS7.6.1810/mysql/5.7.27/my.cnf @@ -0,0 +1,17 @@ +[mysqld_safe] +log-error=/data/mysql/log/mysql.log +pid-file=/data/mysql/run/mysqld.pid +[mysqldump] +quick +[mysql] +no-auto-rehash +[client] +default-character-set=utf8 +socket=/data/mysql/run/mysql.sock +[mysqld] +basedir=/usr/local/mysql +tmpdir=/data/mysql/tmp +datadir=/data/mysql/data +default_authentication_plugin=mysql_native_password +port=3306 +user=mysql diff --git a/DBMS/CentOS7.6.1810/mysql/5.7.27/mysql5.7.27.spec b/DBMS/CentOS7.6.1810/mysql/5.7.27/mysql5.7.27.spec new file mode 100644 index 0000000000000000000000000000000000000000..10cde8b317b388dc919a864e39966a3ada15995f --- /dev/null +++ b/DBMS/CentOS7.6.1810/mysql/5.7.27/mysql5.7.27.spec @@ -0,0 +1,113 @@ +Name: mysql +Version: 5.7.27 +Release: 1%{?dist} + +Group: applications/database +License: Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Under GPLv2 license as shown in the Description field. +URL: http://www.mysql.com +Source: %{name}-boost-%{version}.tar.gz + +Autoreq: no +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +prefix: /usr/local/mysql +Summary: A very fast and reliable SQL database server + +%description + +%define MYSQL_USER mysql +%define MYSQL_GROUP mysql +%define __os_install_post %{nil} +%define __debug_install_post \ +%{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}" \ +%{nil} + +%prep +%setup -q -n mysql-%{version} + +%build +cmake \ +-DCMAKE_INSTALL_PREFIX=%{prefix} \ +-DMYSQL_DATADIR=/data/mysql \ +-DSYSCONFDIR=/etc \ +-DWITH_INNOBASE_STORAGE_ENGINE=1 \ +-DWITH_PARTITION_STORAGE_ENGINE=1 \ +-DWITH_FEDERATED_STORAGE_ENGINE=1 \ +-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ +-DWITH_MYISAM_STORAGE_ENGINE=1 \ +-DENABLED_LOCAL_INFILE=1 \ +-DENABLE_DTRACE=0 \ +-DDEFAULT_CHARSET=utf8mb4 \ +-DDEFAULT_COLLATION=utf8mb4_general_ci \ +-DWITH_EMBEDDED_SERVER=1 \ +-DDOWNLOAD_BOOST=1 \ +-DWITH_BOOST=boost/boost_1_59_0 + +make -j `cat /proc/cpuinfo | grep processor | wc -l` + +%install +make -j `cat /proc/cpuinfo | grep processor | wc -l` DESTDIR=$RPM_BUILD_ROOT install +cp %{_sourcedir}/my.cnf $RPM_BUILD_ROOT%{prefix}/ +cp %{_sourcedir}/libatomic.so.1 $RPM_BUILD_ROOT/usr/local/mysql/lib +cp %{_sourcedir}/libstdc++.so.6.0.24 $RPM_BUILD_ROOT/usr/local/mysql/lib + +%clean +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/* + +%files +%defattr(-, %{MYSQL_USER}, %{MYSQL_GROUP}) +%attr(755, %{MYSQL_USER}, %{MYSQL_GROUP}) %{prefix}/* + +%pre +if ! id %{MYSQL_USER} > /dev/null 2>&1;then + groupadd %{MYSQL_GROUP} + useradd -g %{MYSQL_GROUP} %{MYSQL_USER} +fi + +%post + +if [ -f %{prefix}/support-files/mysql.server > /dev/null 2>&1 ] && [ ! -f %{_initddir}/mysql > /dev/null 2>&1 ];then + cp %{prefix}/support-files/mysql.server %{_initddir}/mysql + chmod +x %{_initddir}/mysql + chkconfig --level 2345 mysql on +fi +if [ ! -f /usr/lib64/libatomic.so.1 ];then + cp -f /usr/local/mysql/lib/libatomic.so.1 /usr/lib64/ +else + ver1=`ls -l /usr/lib64/libatomic.so.1|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver11=`echo -e "${ver1}\n1.1.99"|sort -V|tail -1` + if [ "${ver11}" = "1.1.99" ];then + cp -f /usr/local/mysql/lib/libatomic.so.1 /usr/lib64/ + fi +fi +if [ ! -f /usr/lib64/libstdc++.so.6 ];then + cp -f /usr/local/mysql/lib/libstdc++.so.6.0.24 /usr/lib64/ + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 +else + ver2=`ls -l /usr/lib64/libstdc++.so.6|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver22=`echo -e "${ver2}\n6.0.23"|sort -V|tail -1` + if [ "${ver22}" = "6.0.23" ];then + cp -f /usr/local/mysql/lib/libstdc++.so.6.0.24 /usr/lib64 + rm -f /usr/lib64/libstdc++.so.6 + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 + fi +fi +cp %{prefix}/my.cnf %{_sysconfdir}/my.cnf +chown mysql:mysql %{_sysconfdir}/my.cnf +echo export PATH=$PATH:/usr/local/mysql/bin >> %{_sysconfdir}/profile +echo "MySQL ${version} installed successfully. You can now add %{prefix}/bin to path by 'source %{_sysconfdir}/profile'" + +%preun +if [ -f %{_sysconfdir}/my.cnf ];then + mv %{_sysconfdir}/my.cnf %{_sysconfdir}/my.cnf.rpmold +fi +if [ -f %{_initddir}/mysql ];then + mv %{_initddir}/mysql %{_initddir}/mysql.rpmold +fi + +%postun +rm -rf %{prefix} +userdel -r {MYSQL_USER} >/dev/null 2>&1 + +%changelog + diff --git a/DBMS/CentOS7.6.1810/mysql/8.0.17/CentOS-AltArch-7.repo b/DBMS/CentOS7.6.1810/mysql/8.0.17/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/DBMS/CentOS7.6.1810/mysql/8.0.17/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/DBMS/CentOS7.6.1810/Dockerfile-mysql-8.0.17 b/DBMS/CentOS7.6.1810/mysql/8.0.17/Dockerfile-mysql-8.0.17 similarity index 61% rename from DBMS/CentOS7.6.1810/Dockerfile-mysql-8.0.17 rename to DBMS/CentOS7.6.1810/mysql/8.0.17/Dockerfile-mysql-8.0.17 index 1706bf54283e3237039551d3d8b4b0a96864ee2d..6c6b044297ace3bb976e078377421c6a6f1e5a0b 100644 --- a/DBMS/CentOS7.6.1810/Dockerfile-mysql-8.0.17 +++ b/DBMS/CentOS7.6.1810/mysql/8.0.17/Dockerfile-mysql-8.0.17 @@ -1,9 +1,6 @@ # Starting from CentOS 7.6.1810 aarch64 FROM arm64v8/centos:1810 -# Expose default MySQL port - notice that this dockerfile only INSTALL MySQL but not configure and run it -EXPOSE 3306 - # Compile arg - automatic ARG COMPILE_THREAD="lscpu | grep ^CPU\(s\): | awk '{print \$2}'" @@ -13,7 +10,7 @@ RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak \ COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. RUN yum clean all \ && yum makecache \ - && yum -y install ncurses ncurses-devel libaio-devel openssl openssl-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel gcc gcc-c++ cmake net-tools wget + && yum -y install bison ncurses ncurses-devel libaio-devel openssl openssl-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel gcc gcc-c++ cmake net-tools wget tar git rpcgen rpm-build unzip # Update cmake and gcc to proper version WORKDIR /home @@ -32,14 +29,19 @@ RUN wget "https://cmake.org/files/v3.5/cmake-3.5.2.tar.gz" \ && make -j$(eval ${COMPILE_THREAD}) \ && make -j$(eval ${COMPILE_THREAD}) install +# Get rpm bug fix files +RUN wget "https://mirrors.huaweicloud.com/kunpeng/archive/kunpeng_solution/database/patch/rpm-bug.zip" \ + && unzip rpm-bug.zip + # Get MySQL source code, build and install +WORKDIR /root + RUN wget "https://cdn.mysql.com/archives/mysql-8.0/mysql-boost-8.0.17.tar.gz" \ - && tar -zxf mysql-boost-8.0.17.tar.gz \ - && mkdir -p /data/mysql \ - && cd mysql-8.0.17/ \ - && mkdir build \ - && cd build \ - && cmake .. -DBUILD_CONFIG=mysql_release -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql/data -DWITH_BOOST=../boost/boost_1_69_0 \ - && make -j$(eval ${COMPILE_THREAD}) \ - && make -j$(eval ${COMPILE_THREAD}) install \ - && /usr/local/mysql/bin/mysql --version + && mkdir -p rpmbuild/{BUILD,SOURCES,SPECS,RPMS} \ + && mv mysql-boost-8.0.17.tar.gz rpmbuild/SOURCES/. \ + && mv /home/rpm-bug/* rpmbuild/SOURCES/. +COPY my.cnf rpmbuild/SOURCES/. +COPY mysql8.0.17.spec rpmbuild/SPECS/. +RUN rpmbuild -bb rpmbuild/SPECS/mysql8.0.17.spec \ + && mkdir -p /root/output \ + && cp rpmbuild/RPMS/aarch64/mysql-8.0.17-1.el7.aarch64.rpm output/. diff --git a/DBMS/CentOS7.6.1810/mysql/8.0.17/my.cnf b/DBMS/CentOS7.6.1810/mysql/8.0.17/my.cnf new file mode 100644 index 0000000000000000000000000000000000000000..71378d3cf0825ec60efc01e02e2f29f7ae0f2379 --- /dev/null +++ b/DBMS/CentOS7.6.1810/mysql/8.0.17/my.cnf @@ -0,0 +1,17 @@ +[mysqld_safe] +log-error=/data/mysql/log/mysql.log +pid-file=/data/mysql/run/mysqld.pid +[mysqldump] +quick +[mysql] +no-auto-rehash +[client] +default-character-set=utf8 +[mysqld] +basedir=/usr/local/mysql +tmpdir=/data/mysql/tmp +socket=/data/mysql/run/mysql.sock +datadir=/data/mysql/data +default_authentication_plugin=mysql_native_password +port=3306 +user=mysql diff --git a/DBMS/CentOS7.6.1810/mysql/8.0.17/mysql8.0.17.spec b/DBMS/CentOS7.6.1810/mysql/8.0.17/mysql8.0.17.spec new file mode 100644 index 0000000000000000000000000000000000000000..7b2b4c35c83c94c10ea27f54b8314a9238db4846 --- /dev/null +++ b/DBMS/CentOS7.6.1810/mysql/8.0.17/mysql8.0.17.spec @@ -0,0 +1,102 @@ +Name: mysql +Version: 8.0.17 +Release: 1%{?dist} + +Group: applications/database +License: Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Under GPLv2 license as shown in the Description field. +URL: http://www.mysql.com +Source: %{name}-boost-%{version}.tar.gz + +Autoreq: no +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +prefix: /usr/local/mysql +Summary: A very fast and reliable SQL database server + +%description + +%define MYSQL_USER mysql +%define MYSQL_GROUP mysql +%define __os_install_post %{nil} +%define __debug_install_post \ +%{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}" \ +%{nil} + +%prep +%setup -q -n mysql-%{version} + +%build +cmake . \ +-DBUILD_CONFIG=mysql_release \ +-DCMAKE_INSTALL_PREFIX=%{prefix} \ +-DMYSQL_DATADIR=/data/mysql/data \ +-DWITH_BOOST=boost/boost_1_69_0 \ +-DFORCE_INSOURCE_BUILD=1 + +make -j `cat /proc/cpuinfo | grep processor | wc -l` + +%install +make -j `cat /proc/cpuinfo | grep processor | wc -l` DESTDIR=%{buildroot} install +cp %{_sourcedir}/my.cnf $RPM_BUILD_ROOT%{prefix}/ +cp %{_sourcedir}/libatomic.so.1 $RPM_BUILD_ROOT%{prefix}/lib +cp %{_sourcedir}/libstdc++.so.6.0.24 $RPM_BUILD_ROOT%{prefix}/lib + +%clean +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/* + +%files +%defattr(-, %{MYSQL_USER}, %{MYSQL_GROUP}) +%attr(755, %{MYSQL_USER}, %{MYSQL_GROUP}) %{prefix}/* + +%pre +if ! id %{MYSQL_USER} > /dev/null 2>&1;then + groupadd %{MYSQL_GROUP} + useradd -g %{MYSQL_GROUP} %{MYSQL_USER} +fi + +%post +if [ -f %{prefix}/support-files/mysql.server > /dev/null 2>&1 ] && [ ! -f %{_initddir}/mysql > /dev/null 2>&1 ];then + cp %{prefix}/support-files/mysql.server %{_initddir}/mysql + chmod +x %{_initddir}/mysql + chkconfig --level 2345 mysql on +fi +if [ ! -f /usr/lib64/libatomic.so.1 ];then + cp -f /usr/local/mysql/lib/libatomic.so.1 /usr/lib64/ +else + ver1=`ls -l /usr/lib64/libatomic.so.1|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver11=`echo -e "${ver1}\n1.1.99"|sort -V|tail -1` + if [ "${ver11}" = "1.1.99" ];then + cp -f /usr/local/mysql/lib/libatomic.so.1 /usr/lib64/ + fi +fi +if [ ! -f /usr/lib64/libstdc++.so.6 ];then + cp -f /usr/local/mysql/lib/libstdc++.so.6.0.24 /usr/lib64/ + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 +else + ver2=`ls -l /usr/lib64/libstdc++.so.6|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver22=`echo -e "${ver2}\n6.0.23"|sort -V|tail -1` + if [ "${ver22}" = "6.0.23" ];then + cp -f /usr/local/mysql/lib/libstdc++.so.6.0.24 /usr/lib64 + rm -f /usr/lib64/libstdc++.so.6 + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 + fi +fi +cp %{prefix}/my.cnf %{_sysconfdir}/my.cnf +chown mysql:mysql %{_sysconfdir}/my.cnf +echo export PATH=$PATH:/usr/local/mysql/bin >> %{_sysconfdir}/profile +echo "MySQL ${version} installed successfully. You can now add %{prefix}/bin to path by 'source %{_sysconfdir}/profile'" + +%preun +if [ -f %{_sysconfdir}/my.cnf ];then + mv %{_sysconfdir}/my.cnf %{_sysconfdir}/my.cnf.rpmold +fi +if [ -f %{_initddir}/mysql ];then + mv %{_initddir}/mysql %{_initddir}/mysql.rpmold +fi + +%postun +rm -rf %{prefix} +userdel -r {MYSQL_USER} >/dev/null 2>&1 + +%changelog + diff --git a/DBMS/CentOS7.6.1810/percona/8.0.15/CentOS-AltArch-7.repo b/DBMS/CentOS7.6.1810/percona/8.0.15/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/DBMS/CentOS7.6.1810/percona/8.0.15/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/DBMS/CentOS7.6.1810/Dockerfile-percona-8.0.15 b/DBMS/CentOS7.6.1810/percona/8.0.15/Dockerfile-percona-8.0.15 similarity index 71% rename from DBMS/CentOS7.6.1810/Dockerfile-percona-8.0.15 rename to DBMS/CentOS7.6.1810/percona/8.0.15/Dockerfile-percona-8.0.15 index e397f4caa23a44aa77e16435cbd1d1f854a17b51..15930ce738f6342782df0ba7f2a3e88793777282 100644 --- a/DBMS/CentOS7.6.1810/Dockerfile-percona-8.0.15 +++ b/DBMS/CentOS7.6.1810/percona/8.0.15/Dockerfile-percona-8.0.15 @@ -1,9 +1,6 @@ # Starting from CentOS 7.6.1810 aarch64 FROM arm64v8/centos:1810 -# Expose default Percona port - notice that this dockerfile only INSTALL Percona but not configure and run it -EXPOSE 3306 - # Compile arg - automatic ARG COMPILE_THREAD="lscpu | grep ^CPU\(s\): | awk '{print \$2}'" @@ -13,7 +10,7 @@ RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak \ COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. RUN yum clean all \ && yum makecache \ - && yum -y install ncurses ncurses-devel libaio-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel libcurl-devel readline-devel zlib-devel openssl* gcc* cmake perl* bison net-tools wget + && yum -y install ncurses ncurses-devel libaio-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel libcurl-devel readline-devel zlib-devel openssl* gcc* cmake perl* bison net-tools wget git rpm-build unzip # Update cmake and gcc to proper version WORKDIR /home @@ -35,13 +32,20 @@ RUN wget "https://cmake.org/files/v3.5/cmake-3.5.2.tar.gz" \ # Get Percona source code, resolve deadlock bug and build RUN wget "https://www.percona.com/downloads/Percona-Server-LATEST/Percona-Server-8.0.15-6/source/tarball/percona-server-8.0.15-6.tar.gz" \ && tar -zxf percona-server-8.0.15-6.tar.gz \ - && mkdir -p /data/percona \ && wget "https://nchc.dl.sourceforge.net/project/boost/boost/1.68.0/boost_1_68_0.tar.gz" \ - && tar -zxf boost_1_68_0.tar.gz \ && cd percona-server-8.0.15-6/storage/innobase/sync \ && sed -i '512,514d' sync0rw.cc \ && sed -i '511a\ bool recursive;\n os_thread_id_t writer_thread;\n\n if (!pass) {\n recursive = lock->recursive;\n os_rmb;\n writer_thread = lock->writer_thread;\n }' sync0rw.cc \ - && cd /home/percona-server-8.0.15-6 \ - && cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_CONFIG=mysql_release -DFEATURE_SET=community -DWITH_BOOST=/home/boost_1_68_0 -DCMAKE_INSTALL_PREFIX=/usr/local/percona -DMYSQL_DATADIR=/data/percona -DSYSCONFIDIR=/etc -DWITHOUT_TOKUDB=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LOBWRAP=0 -DMYSQL_UNIX_ADDR=/data/percona/run/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DFORCE_INSOURCE_BUILD=1 \ - && make -j$(eval ${COMPILE_THREAD}) \ - && make -j$(eval ${COMPILE_THREAD}) install + && cd /home \ + && tar -czf percona-server-8.0.15-6.tar.gz percona-server-8.0.15-6/ +WORKDIR /root +RUN mkdir -p rpmbuild/{BUILD,RPMS,SOURCES,SPECS} \ + && mv /home/percona-server-8.0.15-6.tar.gz rpmbuild/SOURCES/. \ + && mv /home/boost_1_68_0.tar.gz rpmbuild/SOURCES/. \ + && wget https://mirrors.huaweicloud.com/kunpeng/archive/kunpeng_solution/database/patch/rpm-bug.zip \ + && unzip rpm-bug.zip \ + && cp rpm-bug/* rpmbuild/SOURCES/. +COPY percona8.0.15.spec rpmbuild/SPECS/. +RUN rpmbuild -bb rpmbuild/SPECS/percona8.0.15.spec \ + && mkdir -p /root/output \ + && cp rpmbuild/RPMS/aarch64/percona-8.0.15-6.el7.aarch64.rpm output/. diff --git a/DBMS/CentOS7.6.1810/percona/8.0.15/percona8.0.15.spec b/DBMS/CentOS7.6.1810/percona/8.0.15/percona8.0.15.spec new file mode 100644 index 0000000000000000000000000000000000000000..9c585bfb00f155000441cbe56ca61c43535fa08c --- /dev/null +++ b/DBMS/CentOS7.6.1810/percona/8.0.15/percona8.0.15.spec @@ -0,0 +1,110 @@ +Name: percona +Version: 8.0.15 +Release: 6%{?dist} + +Group: applications/database +License: Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved. Under GPLv2 license as shown in the Description field. +URL: http://www.percona.com +Source: %{name}-server-%{version}-6.tar.gz + +Autoreq: no +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +prefix: /usr/local/percona +Summary: A very fast and reliable SQL database server + +%description + +%define MYSQL_USER mysql +%define MYSQL_GROUP mysql +%define __os_install_post %{nil} +%define __debug_install_post \ +%{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}" \ +%{nil} + +%prep +%setup -q -n percona-%{version} %setup -q -n %{name}-server-%{version}-6 + +%build +tar zxf %{_sourcedir}/boost_1_68_0.tar.gz +cmake . \ +-DCMAKE_BUILD_TYPE=RelWithDebInfo \ +-DBUILD_CONFIG=mysql_release \ +-DFEATURE_SET=community \ +-DWITH_BOOST=./boost_1_68_0 \ +-DCMAKE_INSTALL_PREFIX=/usr/local/percona \ +-DMYSQL_DATADIR=/data/percona/data \ +-DSYSCONFDIR=/etc \ +-DWITHOUT_TOKUDB=1 \ +-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ +-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ +-DWITH_SSL=system \ +-DWITH_ZLIB=system \ +-DWITH_LOBWRAP=0 \ +-DMYSQL_UNIX_ADDR=/data/percona/run/mysql.sock \ +-DDEFAULT_CHARSET=utf8 \ +-DDEFAULT_COLLATION=utf8_general_ci \ +-DFORCE_INSOURCE_BUILD=1 + +make -j `cat /proc/cpuinfo | grep processor | wc -l` + +%install +make -j `cat /proc/cpuinfo | grep processor | wc -l` DESTDIR=$RPM_BUILD_ROOT install +cp %{_sourcedir}/libatomic.so.1 $RPM_BUILD_ROOT%{prefix}/lib +cp %{_sourcedir}/libstdc++.so.6.0.24 $RPM_BUILD_ROOT%{prefix}/lib + +%clean +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/* + +%files +%defattr(-, %{MYSQL_USER}, %{MYSQL_GROUP}) +%attr(755, %{MYSQL_USER}, %{MYSQL_GROUP}) %{prefix}/* + +%pre +if ! id %{MYSQL_USER} > /dev/null 2>&1;then + groupadd %{MYSQL_GROUP} + useradd -g %{MYSQL_GROUP} %{MYSQL_USER} +fi + +%post +if [ -f %{prefix}/support-files/mysql.server > /dev/null 2>&1 ] && [ ! -f %{_initddir}/mysql > /dev/null 2>&1 ];then + cp %{prefix}/support-files/mysql.server %{_initddir}/percona + chmod +x %{_initddir}/percona + chkconfig --level 2345 percona on +fi +if [ ! -f /usr/lib64/libatomic.so.1 ];then + cp -f /usr/local/percona/lib/libatomic.so.1 /usr/lib64/ +else + ver1=`ls -l /usr/lib64/libatomic.so.1|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver11=`echo -e "${ver1}\n1.1.99"|sort -V|tail -1` + if [ "${ver11}" = "1.1.99" ];then + cp -f /usr/local/percona/lib/libatomic.so.1 /usr/lib64/ + fi +fi +if [ ! -f /usr/lib64/libstdc++.so.6 ];then + cp -f /usr/local/percona/lib/libstdc++.so.6.0.24 /usr/lib64/ + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 +else + ver2=`ls -l /usr/lib64/libstdc++.so.6|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver22=`echo -e "${ver2}\n6.0.23"|sort -V|tail -1` + if [ "${ver22}" = "6.0.23" ];then + cp -f /usr/local/percona/lib/libstdc++.so.6.0.24 /usr/lib64 + rm -f /usr/lib64/libstdc++.so.6 + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 + fi +fi + +%preun +if [ -f %{_sysconfdir}/my.cnf ];then + mv %{_sysconfdir}/my.cnf %{_sysconfdir}/my.cnf.rpmold +fi +if [ -f %{_initddir}/percona ];then + mv %{_initddir}/percona %{_initddir}/percona.rpmold +fi + +%postun +rm -rf %{prefix} +userdel -r {MYSQL_USER} >/dev/null 2>&1 + +%changelog + diff --git a/DBMS/CentOS7.6.1810/postgresql/11.3/CentOS-AltArch-7.repo b/DBMS/CentOS7.6.1810/postgresql/11.3/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/DBMS/CentOS7.6.1810/postgresql/11.3/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/DBMS/CentOS7.6.1810/Dockerfile-postgresql-11.3 b/DBMS/CentOS7.6.1810/postgresql/11.3/Dockerfile-postgresql-11.3 similarity index 73% rename from DBMS/CentOS7.6.1810/Dockerfile-postgresql-11.3 rename to DBMS/CentOS7.6.1810/postgresql/11.3/Dockerfile-postgresql-11.3 index 211bfd7e875ef386a3492023547612efef33a114..d0e240a45dd728f787272586675c738e6bc21809 100644 --- a/DBMS/CentOS7.6.1810/Dockerfile-postgresql-11.3 +++ b/DBMS/CentOS7.6.1810/postgresql/11.3/Dockerfile-postgresql-11.3 @@ -13,7 +13,7 @@ RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak \ COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. RUN yum clean all \ && yum makecache \ - && yum -y install automake zlib zlib-devel bzip2 bzip2-devel bzip2-libs readline readline-devel gcc gcc-c++ make bison ncurses ncurses-devel libaio-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel wget + && yum -y install automake zlib zlib-devel bzip2 bzip2-devel bzip2-libs readline readline-devel gcc gcc-c++ make bison ncurses ncurses-devel libaio-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel wget unzip rpm-build # Update cmake and gcc to proper version WORKDIR /home @@ -34,9 +34,13 @@ RUN wget "https://cmake.org/files/v3.5/cmake-3.5.2.tar.gz" \ # Get PgSQL source code, build and install RUN wget "https://ftp.postgresql.org/pub/source/v11.3/postgresql-11.3.tar.gz" \ - && tar -zxf postgresql-11.3.tar.gz \ - && cd postgresql-11.3/ \ - && ./configure -prefix=/usr/local/pgsql \ - && sed -i '/^CFLAGS = -Wall -Wmissing-prototypes/ s/$/ -march=armv8-a+crc+lse/' src/Makefile.global \ - && make -j$(eval ${COMPILE_THREAD}) \ - && make -j$(eval ${COMPILE_THREAD}) install + && mkdir -p /root/rpmbuild/{BUILD,SOURCES,SPECS,RPMS} \ + && mv postgresql-11.3.tar.gz /root/rpmbuild/SOURCES/. \ + && wget "https://mirrors.huaweicloud.com/kunpeng/archive/kunpeng_solution/database/patch/rpm-bug.zip" \ + && unzip rpm-bug.zip \ + && mv rpm-bug/* /root/rpmbuild/SOURCES/. +WORKDIR /root +COPY postgresql11.3.spec rpmbuild/SPECS/. +RUN rpmbuild -bb rpmbuild/SPECS/postgresql11.3.spec \ + && mkdir -p /root/output \ + && cp rpmbuild/RPMS/aarch64/postgresql-11.3-1.el7.aarch64.rpm output/. diff --git a/DBMS/CentOS7.6.1810/postgresql/11.3/postgresql11.3.spec b/DBMS/CentOS7.6.1810/postgresql/11.3/postgresql11.3.spec new file mode 100644 index 0000000000000000000000000000000000000000..47f99e7ac417707fec769b7a23ded6b54efeb512 --- /dev/null +++ b/DBMS/CentOS7.6.1810/postgresql/11.3/postgresql11.3.spec @@ -0,0 +1,81 @@ +Name: postgresql +Version: 11.3 +Release: 1%{?dist} + +Group: applications/database +License: PostgreSQL +URL: http://www.postgresql.org +Source: %{name}-%{version}.tar.gz + +Autoreq: no +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +prefix: /usr/local/pgsql +Summary: The programs needed to create and run a PostgreSQL server + +%description + +%define PGSQL_USER postgres +%define PGSQL_GROUP postgres +%define __os_install_post %{nil} +%define __debug_install_post \ +%{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}" \ +%{nil} + +%prep +%setup -q -n %{name}-%{version} + +%build +./configure -prefix=%{prefix} + +make -j `cat /proc/cpuinfo | grep processor | wc -l` + +%install +make -j `cat /proc/cpuinfo | grep processor | wc -l` DESTDIR=$RPM_BUILD_ROOT install +cp %{_sourcedir}/libatomic.so.1 $RPM_BUILD_ROOT%{prefix}/lib +cp %{_sourcedir}/libstdc++.so.6.0.24 $RPM_BUILD_ROOT%{prefix}/lib + +%clean +rm -rf $RPM_BUILD_ROOT +rm -rf $RPM_BUILD_DIR/* + +%files +%defattr(-, %{PGSQL_USER}, %{PGSQL_GROUP}) +%attr(755, %{PGSQL_USER}, %{PGSQL_GROUP}) %{prefix}/* + +%pre +if ! id %{PGSQL_USER} > /dev/null 2>&1;then + groupadd %{PGSQL_GROUP} + useradd -g %{PGSQL_GROUP} %{PGSQL_USER} +fi + +%post +if [ ! -f /usr/lib64/libatomic.so.1 ];then + cp -f %{prefix}/lib/libatomic.so.1 /usr/lib64/ +else + ver1=`ls -l /usr/lib64/libatomic.so.1|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver11=`echo -e "${ver1}\n1.1.99"|sort -V|tail -1` + if [ "${ver11}" = "1.1.99" ];then + cp -f %{prefix}/lib/libatomic.so.1 /usr/lib64/ + fi +fi +if [ ! -f /usr/lib64/libstdc++.so.6 ];then + cp -f %{prefix}/lib/libstdc++.so.6.0.24 /usr/lib64/ + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 +else + ver2=`ls -l /usr/lib64/libstdc++.so.6|awk -F'.' '{print ""$6"."$7"."$8""}'` + ver22=`echo -e "${ver2}\n6.0.23"|sort -V|tail -1` + if [ "${ver22}" = "6.0.23" ];then + cp -f %{prefix}/lib/libstdc++.so.6.0.24 /usr/lib64 + rm -f /usr/lib64/libstdc++.so.6 + ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6 + fi +fi + +%preun + +%postun +rm -rf %{prefix} +userdel -r {PGSQL_USER} >/dev/null 2>&1 + +%changelog + diff --git a/Web/CentOS7.6.1810/apache/2.4.46/CentOS-AltArch-7.repo b/Web/CentOS7.6.1810/apache/2.4.46/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/Web/CentOS7.6.1810/apache/2.4.46/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/Web/CentOS7.6.1810/Dockerfile-apache-2.4.46 b/Web/CentOS7.6.1810/apache/2.4.46/Dockerfile-apache-2.4.46 similarity index 100% rename from Web/CentOS7.6.1810/Dockerfile-apache-2.4.46 rename to Web/CentOS7.6.1810/apache/2.4.46/Dockerfile-apache-2.4.46 diff --git a/Web/CentOS7.6.1810/haproxy/1.9.0/CentOS-AltArch-7.repo b/Web/CentOS7.6.1810/haproxy/1.9.0/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/Web/CentOS7.6.1810/haproxy/1.9.0/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/Web/CentOS7.6.1810/Dockerfile-haproxy-1.9.0 b/Web/CentOS7.6.1810/haproxy/1.9.0/Dockerfile-haproxy-1.9.0 similarity index 100% rename from Web/CentOS7.6.1810/Dockerfile-haproxy-1.9.0 rename to Web/CentOS7.6.1810/haproxy/1.9.0/Dockerfile-haproxy-1.9.0 diff --git a/Web/CentOS7.6.1810/lighttpd/1.4.53/CentOS-AltArch-7.repo b/Web/CentOS7.6.1810/lighttpd/1.4.53/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/Web/CentOS7.6.1810/lighttpd/1.4.53/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/Web/CentOS7.6.1810/Dockerfile-lighttpd-1.4.53 b/Web/CentOS7.6.1810/lighttpd/1.4.53/Dockerfile-lighttpd-1.4.53 similarity index 100% rename from Web/CentOS7.6.1810/Dockerfile-lighttpd-1.4.53 rename to Web/CentOS7.6.1810/lighttpd/1.4.53/Dockerfile-lighttpd-1.4.53 diff --git a/Web/CentOS7.6.1810/memcached/1.5.12/CentOS-AltArch-7.repo b/Web/CentOS7.6.1810/memcached/1.5.12/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/Web/CentOS7.6.1810/memcached/1.5.12/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/Web/CentOS7.6.1810/Dockerfile-memcached-1.5.12 b/Web/CentOS7.6.1810/memcached/1.5.12/Dockerfile-memcached-1.5.12 similarity index 100% rename from Web/CentOS7.6.1810/Dockerfile-memcached-1.5.12 rename to Web/CentOS7.6.1810/memcached/1.5.12/Dockerfile-memcached-1.5.12 diff --git a/Web/CentOS7.6.1810/nginx/1.14.2/CentOS-AltArch-7.repo b/Web/CentOS7.6.1810/nginx/1.14.2/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/Web/CentOS7.6.1810/nginx/1.14.2/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/Web/CentOS7.6.1810/Dockerfile-nginx-1.14.2 b/Web/CentOS7.6.1810/nginx/1.14.2/Dockerfile-nginx-1.14.2 similarity index 69% rename from Web/CentOS7.6.1810/Dockerfile-nginx-1.14.2 rename to Web/CentOS7.6.1810/nginx/1.14.2/Dockerfile-nginx-1.14.2 index 7aaa4d6f44d7e17a0bf0fd538bc075428a5ab5bb..7e6de2f19ff32dd3ef5186a6d5d06df93d96bb9e 100644 --- a/Web/CentOS7.6.1810/Dockerfile-nginx-1.14.2 +++ b/Web/CentOS7.6.1810/nginx/1.14.2/Dockerfile-nginx-1.14.2 @@ -1,9 +1,6 @@ # Starting from CentOS 7.6.1810 aarch64 FROM arm64v8/centos:1810 -# Expose default Web port -EXPOSE 80 - # Compile arg - automatic ARG COMPILE_THREAD="lscpu | grep ^CPU\(s\): | awk '{print \$2}'" @@ -13,7 +10,7 @@ RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak \ COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. RUN yum clean all \ && yum makecache \ - && yum -y install gcc gcc-c++ make libtool zlib zlib-devel pcre pcre-devel perl-devel perl-ExtUtils-Embed perl-WWW-Curl wget initscripts net-tools + && yum -y install gcc gcc-c++ make libtool zlib zlib-devel pcre pcre-devel perl-devel perl-ExtUtils-Embed perl-WWW-Curl wget initscripts net-tools rpm-build # Install OpenSSL WORKDIR /home @@ -31,9 +28,11 @@ RUN wget https://codeload.github.com/openssl/openssl/tar.gz/OpenSSL_1_1_1a --no- && openssl version # Install Nginx +WORKDIR /root RUN wget https://nginx.org/download/nginx-1.14.2.tar.gz --no-check-certificate \ - && tar -xf nginx-1.14.2.tar.gz \ - && cd nginx-1.14.2/ \ - && ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gzip_static_module --with-http_perl_module --with-pcre --with-openssl=/home/openssl-OpenSSL_1_1_1a \ - && make -j$(eval ${COMPILE_THREAD}) \ - && make -j$(eval ${COMPILE_THREAD}) install + && mkdir -p rpmbuild/{BUILD,SPECS,SOURCES,RPMS} \ + && mv nginx-1.14.2.tar.gz rpmbuild/SOURCES/. +COPY nginx1.14.2.spec rpmbuild/SPECS/. +RUN rpmbuild -bb rpmbuild/SPECS/nginx1.14.2.spec \ + && mkdir -p /root/output \ + && cp rpmbuild/RPMS/aarch64/nginx-1.14.2-1.el7_4.aarch64.rpm output/. diff --git a/Web/CentOS7.6.1810/nginx/1.14.2/nginx1.14.2.spec b/Web/CentOS7.6.1810/nginx/1.14.2/nginx1.14.2.spec new file mode 100644 index 0000000000000000000000000000000000000000..02e81ef8ae66fad9e711c23daeda628dcea300dc --- /dev/null +++ b/Web/CentOS7.6.1810/nginx/1.14.2/nginx1.14.2.spec @@ -0,0 +1,51 @@ +%define __debug_install_post %{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}"%{nil} +%define _topdir /root/rpmbuild +%define _prefix /usr/local/nginx +%define nginx_user nginx +%define nginx_group nginx +%define nginx_loggroup adm + +Summary: High performance web server +Name: nginx +Version: 1.14.2 +Release: 1%{?dist}_4 +Vendor: Nginx, Inc. +URL: http://nginx.org/ +Group: %{_group} + +Source: %name-%version.tar.gz +License: 2-clause BSD-like license +BuildRequires: perl, pcre-devel + +%description + +%prep +%setup -q + +%build +./configure --prefix=%{_prefix} --with-http_ssl_module --with-http_realip_module \ +--with-http_addition_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module \ +--with-http_gzip_static_module --with-http_perl_module --with-pcre --with-openssl=/home/openssl-OpenSSL_1_1_1a +make -j`cat /proc/cpuinfo | grep processor | wc -l` + +%install +make -j `cat /proc/cpuinfo | grep processor | wc -l` DESTDIR=$RPM_BUILD_ROOT install + +#mkdir -p $RPM_BUILD_ROOT/usr/lib64/perl5/ +#cp $RPM_BUILD_ROOT/root/perl5/lib/perl5/aarch64-linux-thread-multi/perllocal.pod $RPM_BUILD_ROOT/usr/lib64/perl5/ +#mkdir -p $RPM_BUILD_ROOT/usr/local/lib64/perl5/ +#cp -r $RPM_BUILD_ROOT/root/perl5/lib/perl5/aarch64-linux-thread-multi/* $RPM_BUILD_ROOT/usr/local/lib64/perl5/ +#mkdir -p $RPM_BUILD_ROOT/usr/local/share +#cp -r $RPM_BUILD_ROOT/root/perl5/man $RPM_BUILD_ROOT/usr/local/share/ + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-, root, root) +%{_prefix}/* +/usr/lib64/perl5/* +/usr/local/lib64/perl5/* +/usr/local/share/* + +%changelog diff --git a/Web/CentOS7.6.1810/openssl/1.1.1/CentOS-AltArch-7.repo b/Web/CentOS7.6.1810/openssl/1.1.1/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/Web/CentOS7.6.1810/openssl/1.1.1/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/Web/CentOS7.6.1810/openssl/1.1.1/Dockerfile-openssl-1.1.1a b/Web/CentOS7.6.1810/openssl/1.1.1/Dockerfile-openssl-1.1.1a new file mode 100644 index 0000000000000000000000000000000000000000..3248b18b3cb75d90161dc35bfd69e0952f04f8a0 --- /dev/null +++ b/Web/CentOS7.6.1810/openssl/1.1.1/Dockerfile-openssl-1.1.1a @@ -0,0 +1,23 @@ +# Starting from CentOS 7.6.1810 aarch64 +FROM arm64v8/centos:1810 + +# Install required packages from yum, use Huawei Cloud Mirror +RUN mv /etc/yum.repos.d /etc/yum.repos.d.bak \ + && mkdir /etc/yum.repos.d +COPY CentOS-AltArch-7.repo /etc/yum.repos.d/. +RUN yum clean all \ + && yum makecache \ + && yum -y install gcc gcc-c++ make libtool zlib zlib-devel pcre pcre-devel perl-devel perl-ExtUtils-Embed perl-WWW-Curl wget initscripts net-tools rpm-build + +# Install OpenSSL +WORKDIR /root +RUN wget https://codeload.github.com/openssl/openssl/tar.gz/OpenSSL_1_1_1a --no-check-certificate \ + && mv OpenSSL_1_1_1a openssl-OpenSSL_1_1_1a.tar.gz \ + && mkdir -p rpmbuild/{BUILD,RPMS,SPECS,SOURCES} +COPY openssl1.1.1a.spec rpmbuild/SPECS/. +RUN mv openssl-OpenSSL_1_1_1a.tar.gz rpmbuild/SOURCES/. \ + && rpmbuild -bb rpmbuild/SPECS/openssl1.1.1a.spec \ + && mkdir -p /root/output \ + && cp rpmbuild/RPMS/aarch64/openssl-1.1.1a-3.el7.aarch64.rpm output/. \ + && cp rpmbuild/RPMS/aarch64/openssl-devel-1.1.1a-3.el7.aarch64.rpm output/. \ + && cp rpmbuild/RPMS/aarch64/openssl-libs-1.1.1a-3.el7.aarch64.rpm output/. diff --git a/Web/CentOS7.6.1810/openssl/1.1.1/openssl1.1.1a.spec b/Web/CentOS7.6.1810/openssl/1.1.1/openssl1.1.1a.spec new file mode 100644 index 0000000000000000000000000000000000000000..1a0b6d19258e26ed2c21e3d07fa30535a611101f --- /dev/null +++ b/Web/CentOS7.6.1810/openssl/1.1.1/openssl1.1.1a.spec @@ -0,0 +1,73 @@ +%define __debug_install_post %{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}"%{nil} +%define _prefix /usr/local +%define _libdir %{_prefix}/lib +%define soversion 1.1 + +%global _performance_build 1 + +BuildArch: aarch64 +Name: openssl +Version: 1.1.1a +Release: 3%{?dist} + +Source: openssl-OpenSSL_1_1_1a.tar.gz +License: OpenSSL +Group: System Environment/Libraries +URL: http://www.openssl.org/ +SUmmary: Utilities from the general purpose cryptography library with TLS implementation +BuildRequires: gcc +AutoReq: no + +%description + +%package libs +Summary: A general purpose cryptography library with TLS implementation +Group: System Environment/Libraries + +%description libs + +%package devel +SUmmary: Files for development of applications which will use OpenSSL +Group: Development/Libraries + +%description devel + +%prep +%setup -q -n openssl-OpenSSL_1_1_1a + +%build +./config --prefix=%{_prefix} -Wl,-rpath,%{_libdir} + +make -j `cat /proc/cpuinfo | grep processor | wc -l` all + +%install +install -d $RPM_BUILD_ROOT{%{_bindir},%{_includedir},%{_libdir},%{_mandir},%{_libdir}/openssl,%{_pkgdocdir}} +make -j `cat /proc/cpuinfo | grep processor | wc -l` DESTDIR=$RPM_BUILD_ROOT install + +%files +%{!?_licensedir:%global license %%doc} +%license LICENSE +%doc FAQ NEWS README README.FIPS +%{_bindir}/* +%{_mandir}/man1*/* +%{_mandir}/man5*/* +%{_mandir}/man7*/* +%exclude %{_mandir}/man1*/*.pl* +%exclude %{_mandir}/man1*/c_rehash* +%exclude %{_mandir}/man1*/tsget* +%exclude %{_mandir}/man1*/openssl-tsget* + +%files libs +%{!?_licensedir:%global license %%doc} +%license LICENSE +%{_libdir}/* + +%files devel +%doc CHANGES doc/dir-locals.example.el doc/openssl-c-indent.el +%{_prefix}/include/openssl +%{_prefix}/ssl/* +%{_mandir}/man3*/* +%{_prefix}/share/doc/openssl/html/* + +%changelog + diff --git a/Web/CentOS7.6.1810/squid/4.8/CentOS-AltArch-7.repo b/Web/CentOS7.6.1810/squid/4.8/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/Web/CentOS7.6.1810/squid/4.8/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/Web/CentOS7.6.1810/Dockerfile-squid-4.8 b/Web/CentOS7.6.1810/squid/4.8/Dockerfile-squid-4.8 similarity index 100% rename from Web/CentOS7.6.1810/Dockerfile-squid-4.8 rename to Web/CentOS7.6.1810/squid/4.8/Dockerfile-squid-4.8 diff --git a/Web/CentOS7.6.1810/tengine/2.2.2/CentOS-AltArch-7.repo b/Web/CentOS7.6.1810/tengine/2.2.2/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/Web/CentOS7.6.1810/tengine/2.2.2/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/Web/CentOS7.6.1810/Dockerfile-tengine-2.2.2 b/Web/CentOS7.6.1810/tengine/2.2.2/Dockerfile-tengine-2.2.2 similarity index 100% rename from Web/CentOS7.6.1810/Dockerfile-tengine-2.2.2 rename to Web/CentOS7.6.1810/tengine/2.2.2/Dockerfile-tengine-2.2.2 diff --git a/Web/CentOS7.6.1810/openssl.cnf b/Web/CentOS7.6.1810/tengine/2.2.2/openssl.cnf similarity index 100% rename from Web/CentOS7.6.1810/openssl.cnf rename to Web/CentOS7.6.1810/tengine/2.2.2/openssl.cnf diff --git a/Web/CentOS7.6.1810/varnish/6.2.0/CentOS-AltArch-7.repo b/Web/CentOS7.6.1810/varnish/6.2.0/CentOS-AltArch-7.repo new file mode 100644 index 0000000000000000000000000000000000000000..52e3a2371fd9ba0b9fe730c258b0fa4d07bb7b5d --- /dev/null +++ b/Web/CentOS7.6.1810/varnish/6.2.0/CentOS-AltArch-7.repo @@ -0,0 +1,25 @@ +[base] +name=CentOS-7.6 - Base - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[updates] +name=CentOS-7.6 - Updates - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/updates/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[extras] +name=CentOS-7.6 - Extras - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/extras/aarch64/ +gpgcheck=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + +[centosplus] +name=CentOS-7.6 - Plus - mirrors.huaweicloud.com +baseurl=https://mirrors.huaweicloud.com/centos-altarch/7/centosplus/aarch64/ +gpgcheck=0 +enabled=0 +gpgkey=https://mirrors.huaweicloud.com/centos-altarch/7/os/aarch64/RPM-GPG-KEY-CentOS-7-$basearch + diff --git a/Web/CentOS7.6.1810/Dockerfile-varnish-6.2.0 b/Web/CentOS7.6.1810/varnish/6.2.0/Dockerfile-varnish-6.2.0 similarity index 100% rename from Web/CentOS7.6.1810/Dockerfile-varnish-6.2.0 rename to Web/CentOS7.6.1810/varnish/6.2.0/Dockerfile-varnish-6.2.0