Explorar el Código

change build for k8s

Tomishinets Vladimir hace 4 años
padre
commit
3954f8ac3a
Se han modificado 8 ficheros con 86 adiciones y 95 borrados
  1. 15 12
      Dockerfile
  2. 0 0
      cluster.conf
  3. 0 68
      docker-entrypoint.sh
  4. 70 0
      entrypoint.sh
  5. 0 13
      firebird.conf
  6. 1 2
      healthcheck.sh
  7. BIN
      libcluster.so
  8. BIN
      libcrypto.so

+ 15 - 12
Dockerfile

@@ -1,26 +1,29 @@
 FROM centos:7.7.1908
 ENV LANG="en_US.UTF-8"
 VOLUME /data
-ENTRYPOINT ["/docker-entrypoint.sh"]
+ENTRYPOINT ["/entrypoint.sh"]
 EXPOSE 3050
-HEALTHCHECK --start-period=30s --interval=15s --timeout=5s --retries=2 CMD /healthcheck.sh
+ARG APIKEY='AKCp8hyEoKgEqw7KkGsRGbVmyUdKeJupBHNYgShDHok1nqqNzx1zvoKq8QpZT9hUjp6rh3k37'
+
 RUN set -x && \
     yum install -y epel-release && \
-    curl https://copr.fedorainfracloud.org/coprs/makowski/firebird/repo/epel-7/makowski-firebird-epel-7.repo > /etc/yum.repos.d/makowski-firebird-epel-7.repo && \
+    curl https://copr.fedorainfracloud.org/coprs/makowski/firebird/repo/epel-7/makowski-firebird-epel-7.repo \
+        > /etc/yum.repos.d/makowski-firebird-epel-7.repo && \
     yum install -y firebird-3.0.6.33328 icu && \
+    curl -u provision:${APIKEY} "https://jcr.infoclinica.ru/artifactory/resources/fb3/libcrypto.so" \
+        --output /usr/lib64/firebird/plugins/udr/libcrypto.so && \
+    curl -u provision:${APIKEY} "https://jcr.infoclinica.ru/artifactory/resources/fb3/libcluster.so" \
+        --output /usr/lib64/firebird/plugins/libcrypto.so && \
     mkdir -p /var/run/firebird && \
     chown firebird. /var/run/firebird && \
     chown firebird. /data && \
-    yum clean all && \
-    ln -fs /usr/share/zoneinfo/Europe/Moscow /etc/localtime
-COPY firebird.conf /etc/firebird/firebird.conf
-COPY docker-entrypoint.sh /docker-entrypoint.sh
+    yum clean all
+
+
+COPY entrypoint.sh /entrypoint.sh
 COPY healthcheck.sh /healthcheck.sh
-COPY libcluster.so /usr/lib64/firebird/plugins/
-COPY cluster.conf /usr/lib64/firebird/plugins/
-COPY libcrypto.so /usr/lib64/firebird/plugins/udr 
+
 RUN set -x && \
-    chmod +x /docker-entrypoint.sh && \
+    chmod +x /entrypoint.sh && \
     chmod +x /healthcheck.sh
 CMD ["/usr/sbin/fbguard"]
-

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
cluster.conf


+ 0 - 68
docker-entrypoint.sh

@@ -1,68 +0,0 @@
-#!/usr/bin/env bash
-set -e
-
-function log_to_dockerout {
-    cd /var/log/firebird
-    while true 
-    do
-      for i in $(ls *.log)
-      do
-          if [ -z "$(pgrep -f ${i})" ] ; then 
-             echo Processing ${i} > /var/log/dockerout
-             tail -f /var/log/firebird/$i 2> /dev/null | while read fread; do echo "[${i}]: ${fread}" >> /var/log/dockerout; :> /var/log/firebird/$i; done &
-          fi
-      done
-      sleep 10
-    done
-}
-
-function sec_init
-{
-
-    cat <<EOF | isql-fb security.db
-    create or alter user SYSDBA password '$_SYSDBA_PWD' using plugin Srp;
-    create or alter user SYSDBA password '$_SYSDBA_PWD' using plugin Legacy_UserManager;
-    commit;
-    quit;
-EOF
-
-if [ -f /run/secrets/FB3_USER_NAME ] && [ -f /run/secrets/FB3_USER_PWD ]; then
-    echo "Setting up Firebird user $(cat /run/secrets/FB3_USER_NAME) with 'grant create database'"
-    cat <<EOF | isql-fb security.db
-    create or alter user $(cat /run/secrets/FB3_USER_NAME) password '$(cat /run/secrets/FB3_USER_PWD)' using plugin Srp;
-    create or alter user $(cat /run/secrets/FB3_USER_NAME) password '$(cat /run/secrets/FB3_USER_PWD)' using plugin Legacy_UserManager;
-    grant create database to user $(cat /run/secrets/FB3_USER_NAME);
-    commit;
-    quit;
-EOF
-fi
-
-}
-
-function checkbase_init
-{
-    mktemp > /etc/firebird/check-database.conf
-    rm -f $(cat /etc/firebird/check-database.conf)
-    isql-fb << EOF
-    CREATE DATABASE "$(cat /etc/firebird/check-database.conf)";
-EOF
-
-}
-
-if [ ! -f /run/secrets/FB3_SYSDBA_PWD ]; then
-    mkdir -p /run/secrets
-    echo $RANDOM$RANDOM > /run/secrets/FB3_SYSDBA_PWD
-    echo "Setting SYSDBA's random password: "$( cat /run/secrets/FB3_SYSDBA_PWD )
-fi
-_SYSDBA_PWD=$(cat /run/secrets/FB3_SYSDBA_PWD)
-
-sec_init
-
-checkbase_init
-
-mkfifo /var/log/dockerout
-tail -f /var/log/dockerout &
-
-log_to_dockerout &
-
-exec "$@"

+ 70 - 0
entrypoint.sh

@@ -0,0 +1,70 @@
+#!/usr/bin/env bash
+set -e
+
+function log_to_dockerout {
+  cd /var/log/firebird
+  while true
+  do
+    for i in $(ls *.log)
+    do
+      if [ -z "$(pgrep -f ${i})" ] ; then
+        echo Processing ${i} > /var/log/dockerout
+        tail -f /var/log/firebird/$i 2> /dev/null | while read fread; do echo "[${i}]: ${fread}" >> /var/log/dockerout; :> /var/log/firebird/$i; done &
+      fi
+    done
+      sleep 10
+  done
+}
+
+function sec_init {
+  cat <<EOF | isql-fb security.db
+  create or alter user SYSDBA password '$_SYSDBA_PWD' using plugin Srp;
+  create or alter user SYSDBA password '$_SYSDBA_PWD' using plugin Legacy_UserManager;
+  commit;
+  quit;
+EOF
+
+  if [ -f /fb3-user-password/FB3_USER_NAME ] && [ -f /fb3-user-password/FB3_USER_PWD ]; then
+    echo "Setting up Firebird user $(cat /fb3-user-password/FB3_USER_NAME) with 'grant create database'"
+    cat <<EOF | isql-fb security.db
+    create or alter user $(cat /fb3-user-password/FB3_USER_NAME) password '$(cat /fb3-user-password/FB3_USER_PWD)' using plugin Srp;
+    create or alter user $(cat /fb3-user-password/FB3_USER_NAME) password '$(cat /fb3-user-password/FB3_USER_PWD)' using plugin Legacy_UserManager;
+    grant create database to user $(cat /fb3-user-password/FB3_USER_NAME);
+    commit;
+    quit;
+EOF
+  fi
+}
+
+function checkbase_init {
+  mktemp > /etc/firebird/check-database.conf
+  rm -f $(cat /etc/firebird/check-database.conf)
+  isql-fb << EOF
+  CREATE DATABASE "$(cat /etc/firebird/check-database.conf)";
+EOF
+}
+
+if [ ! -f /fb3-user-password/FB3_SYSDBA_PWD ]; then
+  mkdir -p /fb3-user-password
+  echo $RANDOM$RANDOM > /fb3-user-password/FB3_SYSDBA_PWD
+  echo "Setting SYSDBA's random password: "$( cat /fb3-user-password/FB3_SYSDBA_PWD )
+fi
+_SYSDBA_PWD=$(cat /fb3-user-password/FB3_SYSDBA_PWD)
+
+# Вынос security3.fdb на ПМЖ
+[[ ${EXT_SECURITY} && ${EXT_SECURITY}="true" ]] && \
+  { [ ! -d /data/security3.fdb ] && cp /var/lib/firebird/secdb/security3.fdb /data/security3.fdb; }
+
+# Создаем символические ссылки на конфигурационные файлы
+for i in $(ls -d /configs/*.conf); do ln -sf ${i} /etc/firebird/;done
+ln -sf /cluster/cluster.conf /usr/lib64/firebird/plugins/
+
+sec_init
+checkbase_init
+
+mkfifo /var/log/dockerout
+tail -f /var/log/dockerout &
+
+log_to_dockerout &
+
+exec "$@"

+ 0 - 13
firebird.conf

@@ -1,13 +0,0 @@
-ServerMode = Super 
-DefaultDbCachePages = 50000
-TempBlockSize = 2M
-TempCacheLimit = 364M
-AuthServer = Srp, cluster, Legacy_Auth, Win_Sspi
-AuthClient = Srp, cluster, Legacy_Auth, Win_Sspi
-UserManager = Srp, Legacy_UserManager
-WireCrypt = Enabled
-RemoteServicePort = 3050
-LockMemSize = 9M
-LockHashSlots = 30011
-GuardianOption = 1
-SecurityDatabase = /data/security3.fdb

+ 1 - 2
healthcheck.sh

@@ -1,6 +1,5 @@
 #!/bin/bash
 
-isql-fb -user SYSDBA -password "$(cat /run/secrets/FB3_SYSDBA_PWD)" 127.0.0.1:$(cat /etc/firebird/check-database.conf) << "EOF" || exit 1
+isql-fb -user SYSDBA -password "$(cat /fb3-user-password/FB3_SYSDBA_PWD)" 127.0.0.1:$(cat /etc/firebird/check-database.conf) << "EOF" || exit 1
 SHOW DATABASE;
 EOF
-

BIN
libcluster.so


BIN
libcrypto.so


Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio