Advertisement
Guest User

pgpooladmin

a guest
Feb 13th, 2019
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 3.48 KB | None | 0 0
  1. Soucast docker-compose:
  2.     pgpooladmin:
  3.         build:
  4.             context: ../src
  5.             dockerfile: PgpoolAdmin-4.0-Postgres-10.Dockerfile
  6.         environment:
  7.             HOSTNAME: pgpooladmin
  8.             PCP_USER: ${ENV_PCP_USER}
  9.             PCP_PASSWORD: ${ENV_PCP_PASSWORD}
  10.             WAIT_BACKEND_TIMEOUT: 60
  11.  
  12.             CHECK_USER: ${ENV_CHECK_USER}
  13.             CHECK_PASSWORD: ${ENV_CHECK_PASSWORD}
  14.             CHECK_PGCONNECT_TIMEOUT: 3 #timout for checking if primary node is healthy
  15.             SSH_ENABLE: 1
  16.             DB_USERS: ${ENV_CHECK_USER}:${ENV_CHECK_PASSWORD}
  17.         ports:
  18.                - 8080:80 # PCP
  19.         volumes:
  20.            - ./ssh:/home/postgres/.ssh/keys
  21.         restart: always
  22.         networks:
  23.             cluster:
  24.                 aliases:
  25.                    - pgpool
  26.  
  27.  
  28.  
  29. PgpoolAdmin-4.0-Postgres-10.Dockerfile:
  30. FROM debian:jessie
  31. ARG DOCKERIZE_VERSION=v0.2.0
  32.                      
  33. # grab gosu for easy step-down from root    
  34. ARG GOSU_VERSION=1.7
  35. RUN set -x \
  36.         && apt-get update && apt-get install -y --no-install-recommends ca-certificates wget && rm -rf /var/lib/apt/lists/* \
  37.         && wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture)" \
  38.         && wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture).asc" \
  39.         && export GNUPGHOME="$(mktemp -d)" \
  40.         #echo "disable-ipv6" >> "$GNUPGHOME"/dirmngr.conf;
  41.         && gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4 \
  42.         && gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu \
  43.         && rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc \
  44.         && chmod +x /usr/local/bin/gosu \
  45.         && gosu nobody true
  46.  
  47. RUN  wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | apt-key add - && \
  48.      sh -c 'echo "deb http://ftp.de.debian.org/debian sid main" >> /etc/apt/sources.list.d/sid.list' && \
  49.      sh -c 'echo "deb http://ftp.cz.debian.org/debian/ stable main contrib non-free" >> /etc/apt/sources.list.d/stable.list' && \
  50.      apt-get update
  51.  
  52. RUN  apt-get install -y libffi-dev libssl-dev openssh-server apache2 php libapache2-mod-php php-mcrypt libssl1.1
  53.  
  54. RUN TEMP_TAR="$(mktemp)" && \
  55.     TEMP_TAR_DIR="$(mktemp -d)" && \
  56.     wget -O "$TEMP_TAR" "http://www.pgpool.net/download.php?f=pgpoolAdmin-4.0.1.tar.gz" && \
  57.     tar zxvf $TEMP_TAR -C $TEMP_TAR_DIR && \
  58.     mkdir -p /var/www/html/pgpooladmin && \
  59.     mv $TEMP_TAR_DIR/*/* /var/www/html/pgpooladmin && \
  60.     ls -l /var/www/html/pgpooladmin && \
  61.     chown root:root -R /var/www/html/pgpooladmin && \
  62.     chmod 0777 /var/www/html/pgpooladmin/templates_c && \
  63.     chown www-data /var/www/html/pgpooladmin/conf/pgmgt.conf.php && \
  64.     chmod 0644 /var/www/html/pgpooladmin/conf/pgmgt.conf.php
  65.  
  66. RUN  wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz && \
  67.      tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz
  68.  
  69. COPY ./ssh /home/postgres/.ssh
  70.  
  71. ENV SSH_ENABLE 1
  72.  
  73. COPY pgpooladmin/etc/apache2/sites-available/* /etc/apache2/sites-available/
  74. RUN sh -c 'echo "ServerName pgpooladmin" >> /etc/apache2/apache2.conf'
  75.  
  76. RUN sh -c 'a2ensite pgpooladmin.conf'
  77. COPY pgpooladmin/entrypoint.sh /
  78.  
  79. RUN sh -c 'chmod +x /entrypoint.sh'
  80. EXPOSE 22
  81. EXPOSE 80
  82.  
  83. CMD ["/entrypoint.sh"]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement