• Resolvido Rudá Almeida

    (@rudaalmeida)


    Surgiu a necessidade de usar o docker, em vez de Apache e MySQL na máquina local (Fedora 22) para ter o meu ambiente de desenvolvimento.

    Se eu seguir o guia em https://hub.docker.com/_/wordpress/ eu consigo instanciar o WP, mas sem os dados e sem os meus arquivos que estou editando em /themes/meutema.

    Como preciso editar arquivos que ficam localizados em wp-content, bem como ter o wp-config.php sendo lido, tentei usar o -v do docker para forçar ele a ler os arquivos da minha máquina local.

    Os comandos que executo:
    docker run --name wp-mysql -e MYSQL_ROOT_PASSWORD=root -v /home/user/Projetos/meuprojeto/bancodedados:/docker-entrypoint-initdb.d:Z mysql

    (existe um bd.sql contendo o dump completo que é carregado sem erros)

    docker run --name meuprojeto --link wp-mysql:mysql -p 8080:80 -v /home/user/Projetos/meuprojeto/arquivos/wp-config.php:/var/www/html/wp-config.php:Z -v /home/user/Projetos/meuprojeto/arquivos/wp-content:/var/www/html/wp-content:Z wordpress

    Daí recebo o seguinte erro:

    WordPress not found in /var/www/html - copying now...
    WARNING: /var/www/html is not empty - press Ctrl+C now if this is an error!
    + ls -A
    index.html
    wp-config.php
    wp-content
    + sleep 10
    Complete! WordPress has been successfully copied to /var/www/html
    sed: cannot rename ./sedJSLLeY: Device or resource busy

    E o docker fecha.

    O que estou fazendo de errado?

Visualizando 2 respostas - 1 até 2 (de um total de 2)
  • Criador do tópico Rudá Almeida

    (@rudaalmeida)

    A impressão que tenho é que durante o init do docker ele tenta criar um /var/www/html e o erro surge porque a pasta “já existe” por causa do comando que eu rodei.

    Mas daí qual seria a forma correta de linkar o docker com um wp-config.php e um wp-content locais?

    Criador do tópico Rudá Almeida

    (@rudaalmeida)

    De acordo com o guia oficial do docker:

    Note: Many tools used to edit files including vi and sed –in-place may result in an inode change. Since Docker v1.1.0, this will produce an error such as “sed: cannot rename ./sedKdJ9Dy: Device or resource busy”. In the case where you want to edit the mounted file, it is often easiest to instead mount the parent directory.

    Portanto, a solução é mudar o comando para:

    docker run --name meuprojeto --link wp-mysql:mysql -p 8080:80 -v /home/user/Projetos/meuprojeto/arquivos:/var/www/html:Z wordpress

Visualizando 2 respostas - 1 até 2 (de um total de 2)
  • O tópico ‘WP em docker com wp-content na máquina local’ está fechado para novas respostas.