docker-compose // piwik // erro durante a execução

1

Tento mudar toda a minha aplicação para a janela de encaixe.

A configuração:

Eu usei o nginx como servidor. Com docker eu vou usá-lo como proxy:

# nginx -v
nginx version: nginx/1.4.6 (Ubuntu)

Versão do Docker:

# docker version
Client:
 Version:      1.11.1
 API version:  1.23
 Go version:   go1.5.4
 Git commit:   5604cbe
 Built:        Tue Apr 26 23:30:23 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.11.1
 API version:  1.23
 Go version:   go1.5.4
 Git commit:   5604cbe
 Built:        Tue Apr 26 23:30:23 2016
 OS/Arch:      linux/amd64

# docker-compose -version
docker-compose version 1.7.1, build 0a9ab35

A instalação:

Para instalar o piwik, eu uso o arquivo sugerido aqui: indiehosters / piwik

Mas fiz algumas alterações porque gostaria de: Eu gostaria de usar um banco de dados personalizado para que eu configure um usuário adicional e uma senha. - Eu gostaria de usar diferentes recipientes de mysql por aplicativo para que eu mude o db para piwik_db (não tenho certeza se é uma boa prática) - Eu gostaria de obter um acesso phpmyadmin, mas eu não entendo para fazê-lo funcionar com o ponto 2. Então eu remover a parte de configuração.

Então meu docker compose fil se parece com isso:

piwik_db:
  image: mysql
  volumes:
    - ./mysql/runtime:/var/lib/mysql
  environment:
    MYSQL_ROOT_PASSWORD: P@ssR00t
    MYSQL_DATABASE: analytics
    MYSQL_USER: admin
    MYSQL_PASSWORD: P@ssUser
app:
  image: piwik
  links:
    - piwik_db:mysql
  volumes:
    - ./config:/var/www/html/config
    - ./ssmtp.conf:/etc/ssmtp/ssmtp.conf
    - ./revaliases:/etc/ssmtp/revaliases
web:
  image: nginx
  volumes:
    - ./nginx.conf:/etc/nginx/nginx.conf:ro
    - ./etc/letsencrypt:/etc/letsencrypt
  links:
    - app
  volumes_from:
    - app
  ports:
    - "8000:443"
cron:
  image: piwik
  links:
    - piwik_db:mysql
  volumes_from:
    - app
  entrypoint: |
    bash -c 'bash -s <<EOF
    trap "break;exit" SIGHUP SIGINT SIGTERM
    while /bin/true; do
      su -s "/bin/bash" -c "/usr/local/bin/php /var/www/html/console core:archive" www-data
      sleep 3600
    done
    EOF'

O resultado:

Quando eu executo docker-compose up , ele termina com um erro:

ERROR: for web  rpc error: code = 2 desc = "oci runtime error: could not synchronise with container process: not a directory"
Traceback (most recent call last):
  File "<string>", line 3, in <module>
  File "compose/cli/main.py", line 63, in main
AttributeError: 'ProjectError' object has no attribute 'msg'
docker-compose returned -1

Quando eu testo quais contêineres foram instalados, recebo

# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED              STATUS              PORTS               NAMES
f0388c2a89d3        piwik               "bash -c 'bash -s <<E"   About a minute ago   Up 59 seconds       9000/tcp            htdocs_cron_1
ef5d6c8c6e74        mysql               "docker-entrypoint.sh"   About a minute ago   Up About a minute   3306/tcp            htdocs_piwik_db_1

Por que recebo o erro? Como conseguir a instalação? Como tornar o aplicativo sempre em exibição?

Agradeço antecipadamente por qualquer ajuda.

Ps: ainda uso minha configuração nginx no site disponível:

server {
        listen 80;
        listen [::]:80;

        server_name  piwik.domain.com;
        # Redirige le HTTP vers le HTTPS #
        return         301 https://$server_name$request_uri;
}
server {

        ##
        # config SSL
        ##

        listen 443 ssl;
        ssl_certificate /etc/letsencrypt/live/piwik.domain.com.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/piwik.domain.com.com/privkey.pem;
        keepalive_timeout    70;
        ssl_session_cache    shared:SSL:10m;
        ssl_session_timeout  10m;
        fastcgi_param HTTPS on;
        # add Strict-Transport-Security to prevent man in the middle attacks
        add_header Strict-Transport-Security "max-age=31536000";

        server_name piwik.domain.com.com;
        server_name_in_redirect off;

        root /usr/share/nginx/html/piwik.domain.com.com/htdocs;
        index index.php index.html index.htm;

        # Logs
        access_log /var/log/analytics.access_log;
        error_log /var/log/analytics.error_log;

        # Default location settings
        location / {
                try_files $uri $uri/ /index.php?$args;
                charset utf-8;
                client_max_body_size 20M;
        }

        # Images and static content is treated different
        location ~* ^.+.(js|css|png|jpg|jpeg|gif|ico|html|woff|woff2|ttf|svg|eot|otf)$ {
                add_header Access-Control-Allow-Origin *;
                expires 360d;
                access_log off;
                add_header Cache-Control "public";
        }

        # Deny access to .htaccess files, if Apache's document root
        location ~ /\.ht {
                deny  all;
        }

        location ~ /(libraries|setup/frames|setup/libs) {
                deny all;
                return 404;
        }

        # Pass the PHP scripts to FastCGI server
        location ~* \.php$ {
                # Prevent Zero-day exploit
                try_files $uri =404;
                #
                fastcgi_split_path_info ^(.+?\.php)(/.*)$;
                if (!-f $document_root$fastcgi_script_name) {
                        return 404;
                }
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include /etc/nginx/fastcgi_params;
        }

        # Redirect server error pages to the static page
        error_page   403  /403.html;
        error_page 404 /404.html;
        error_page   500 502 503 504  /50x.html;

        # Exclude from the logs to avoid bloating when it's not available
        include drop.conf;

}
    
por jbo 07.05.2016 / 11:25

1 resposta

0

No meu caso, o problema era que no arquivo de composição ele estava tentando montar arquivos e não pastas, alterá-lo e resolver o problema

    
por 01.07.2016 / 16:09