From 777d9d8056e19ac42a3b8dca2bca3fe749be02a0 Mon Sep 17 00:00:00 2001 From: Adam Dobrawy Date: Tue, 12 Dec 2017 13:48:55 +0100 Subject: [PATCH] Small tweaks in Docker --- .gitignore | 2 ++ Docker/apache2/Dockerfile | 6 +++++- Docker/ckan-base/Dockerfile | 6 ++++-- Docker/ckan/Dockerfile | 2 +- Docker/docker-compose.yml | 11 ++-------- Docker/readme.md | 42 ++++++++++++++++++++++--------------- 6 files changed, 39 insertions(+), 30 deletions(-) diff --git a/.gitignore b/.gitignore index 1d87ae0..efe08d4 100755 --- a/.gitignore +++ b/.gitignore @@ -63,3 +63,5 @@ target/ # CONFIG config/dev.ini +Docker/.env +Docker/apache2/.htpasswd diff --git a/Docker/apache2/Dockerfile b/Docker/apache2/Dockerfile index bc3bf4a..17f5276 100644 --- a/Docker/apache2/Dockerfile +++ b/Docker/apache2/Dockerfile @@ -10,6 +10,7 @@ RUN apt-get update && \ unzip \ gettext-base \ git \ + curl \ php-gd php-apcu php-mysqli php-memcached php-memcache php-xml php-soap php-zip \ php-cli php-common php-bcmath php-curl php-gd php-geoip \ php-imagick php-intl php-json php-msgpack php-mcrypt php-mysql \ @@ -18,6 +19,10 @@ RUN apt-get update && \ && rm -rf /var/lib/apt/lists/* \ && apt-get clean -y +# Download Piwik (as early as possible for avoid cache bursting) + +RUN curl -s http://builds.piwik.org/piwik.zip -o /var/www/html/piwik.zip + # Enable apache2 modules @@ -42,7 +47,6 @@ COPY memcache.ini /etc/php//mods-available/memcache.ini # Install piwik -ADD http://builds.piwik.org/piwik.zip /var/www/html/ RUN cd /var/www/html/ && unzip piwik.zip && \ cd /var/www/html/ && rm piwik.zip && \ chown -R www-data: /var/www/html/ diff --git a/Docker/ckan-base/Dockerfile b/Docker/ckan-base/Dockerfile index 75affa9..46dd5ea 100644 --- a/Docker/ckan-base/Dockerfile +++ b/Docker/ckan-base/Dockerfile @@ -12,6 +12,8 @@ RUN apt-get -q -y update && apt-get -q -y upgrade && DEBIAN_FRONTEND=noninteract python-pip \ python-virtualenv \ libpq-dev \ + python-virtualenv \ + python-wheel \ git-core \ build-essential \ libssl-dev \ @@ -28,7 +30,7 @@ RUN ln -s $CKAN_HOME/bin/pip /usr/local/bin/ckan-pip RUN ln -s $CKAN_HOME/bin/paster /usr/local/bin/ckan-paster ### DANE Z FORKA CKANA -RUN git clone https://github.com/DanePubliczneGovPl/ckan /tmp/ckan +RUN git clone --depth=50 https://github.com/DanePubliczneGovPl/ckan /tmp/ckan RUN mkdir -p $CKAN_HOME/src/ckan/ && cp -r /tmp/ckan/. $CKAN_HOME/src/ckan/ && rm -fr /tmp/ckan/ # SetUp Requirements @@ -54,4 +56,4 @@ ENTRYPOINT ["/ckan-entrypoint.sh"] VOLUME ["/etc/ckan/default"] VOLUME ["/var/lib/ckan"] EXPOSE 5000 -CMD ["ckan-paster","serve","/etc/ckan/default/ckan.ini"] \ No newline at end of file +CMD ["ckan-paster","serve","/etc/ckan/default/ckan.ini"] diff --git a/Docker/ckan/Dockerfile b/Docker/ckan/Dockerfile index d23b5fa..1d5944a 100644 --- a/Docker/ckan/Dockerfile +++ b/Docker/ckan/Dockerfile @@ -7,7 +7,7 @@ RUN mkdir -p /home/ckan RUN DEBIAN_FRONTEND=noninteractive apt-get update # Install additional packages -RUN DEBIAN_FRONTEND=noninteractive apt-get install -q -y git wget curl libxml2-dev libxslt1-dev python-dev libffi-dev libjpeg-dev cron supervisor gettext-base \ +RUN DEBIAN_FRONTEND=noninteractive apt-get install -q -y git wget curl libxml2-dev libxslt1-dev python-dev libffi-dev libjpeg-dev postgresql-client cron supervisor gettext-base \ && rm -rf /var/lib/apt/lists/* \ && apt-get clean -y diff --git a/Docker/docker-compose.yml b/Docker/docker-compose.yml index dabd9d6..bcdd18f 100644 --- a/Docker/docker-compose.yml +++ b/Docker/docker-compose.yml @@ -1,14 +1,8 @@ version: '2' services: - -# ckan-base: -# build: ckan-base/ -# image: ckan-base - ckan: - #build: ckan/ - image: ckan-epf + build: ckan/ container_name: ckan depends_on: - datapusher @@ -73,7 +67,6 @@ services: container_name: solr-ckan restart: always - mysql: image: mariadb:latest container_name: mysql @@ -89,7 +82,7 @@ services: - MYSQL_USER=piwik - MYSQL_PASSWORD=piwik -#najkrotszy serwis ever :) + redis: image: redis diff --git a/Docker/readme.md b/Docker/readme.md index 9e4c510..bef7b2f 100644 --- a/Docker/readme.md +++ b/Docker/readme.md @@ -7,12 +7,13 @@ Dokument w trakce tworzenia. Wersja 0.1 - [CKAN STACK - dokumentacja](#ckan-stack-dokumentacja) - [1. Opis obrazów](#1-opis-obrazów) - - [2. Start stacka](#1-start-stacka) - - [2.1 katalog i źródła](#11-katalog-i-źródła) - - [2.2 Plik z konfiguracją](#12-plik-z-konfiguracją) - - [2.3 Budowa obrazu](#13-budowa-obrazu) - - [2.4 Uruchomienie stacka](#14-uruchomienie-stacka) - - [2.5 Werfyikacja stanu kontenerów](#15-werfyikacja-stanu-kontenerów) + - [2. Start stacka](#2-start-stacka) + - [2.1 katalog i źródła](#21-katalog-i-źródła) + - [2.2 Plik z konfiguracją](#22-plik-z-konfiguracją) + - [2.3 Ustalenie hasła](#23-ustalenie-has_a) + - [2.4 Budowa obrazu](#24-budowa-obrazu) + - [2.5 Uruchomienie stacka](#25-uruchomienie-stacka) + - [2.6 Werfyikacja stanu kontenerów](#26-werfyikacja-stanu-kontenerów) @@ -36,7 +37,7 @@ Poniższy opis pokazuje pierwsze uruchomienie stacka. Zakładam, że masz dostę #### 2.1 katalog i źródła Zakładasz katalog i pobierasz źródła -``` +```bash mkdir /home/ckan cd /home/ckan && git clone git@github.com:DanePubliczneGovPl/ckanext-danepubliczne.git ckan ``` @@ -45,7 +46,7 @@ cd /home/ckan && git clone git@github.com:DanePubliczneGovPl/ckanext-danepublicz Tworzysz plik /home/ckan/ckan/Docker/.env z konfiguracją stacka -``` +```dotenv #### SETUP #### ############### @@ -63,8 +64,8 @@ PUBLIC_IP=192.168.50.22 # sciezki do certyfikatów -CERT_KEY=/etc/ssl/certs/mysitename.key -CERT_FILE=/etc/ssl/certs/mysitename.crt +CERT_FILE=/etc/ssl/private/ssl-cert-snakeoil.key +CERT_KEY=/etc/ssl/certs/ssl-cert-snakeoil.pem # domena pod którą będzie działa strona @@ -84,21 +85,28 @@ PIWIK_TRUSTED_HOSTS=stats.dp.gov.pl # certyfikaty dla domeny piwika -CERT_FILE_STATS=/etc/ssl/certs/mysitename.key -CERT_KEY_STATS=/etc/ssl/certs/mysitename.crt +CERT_KEY_STATS=/etc/ssl/private/ssl-cert-snakeoil.key +CERT_FILE_STATS=/etc/ssl/certs/ssl-cert-snakeoil.pem ``` -#### 2.3 Budowa obrazu +#### 2.3 Ustalenie hasła + +Wykonujesz: +```bash +htpasswd -c -b apache2/.htpasswd ckan ckan +``` + +#### 2.4 Budowa obrazu ``` -cd /home/ckan/ckan/Docker && docker-compose build +cd /home/ckan/ckan/Docker && docker build ckan-base/ -t ckan-base && docker -docker-compose build ``` -#### 2.4 Uruchomienie stacka +#### 2.5 Uruchomienie stacka ``` cd /home/ckan/ckan/Docker && docker-compose up -d ``` -#### 2.5 Werfyikacja stanu kontenerów +#### 2.6 Werfyikacja stanu kontenerów ``` cd /home/ckan/ckan/Docker && docker-compose ps ``` -### FAQ \ No newline at end of file +### FAQ