Colabtech é uma empresa do Grupo Colaborativa e oferecemos serviços de consultoria em nuvem que ajuda empresas de todos os portes a aproveitar os benefícios da computação em nuvem.

Parcerias

Contatos

Rua Cláudio Soares, 72 - Pinheiro - São Paulo - Brasil

contato@colabtech.com.br

(11) 98902-1084

Cloud GCP

Como hospedar o WordPress no ambiente flexível do App Engine

Veja neste tutorial como implantar um pequeno site do WordPress no ambiente flexível do App Engine.

  • Criar uma instância de segunda geração do Cloud SQL.
  • Configurar um site de amostra do WordPress.
  • Implantar o site de amostra do WordPress no ambiente flexível do App Engine.

 

  1. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho dos nossos produtos em situações reais. Clientes novos ganham US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud. Saiba como verificar se o faturamento está ativado em um projeto.

  4. Ative as APIs necessárias.

    Ative as APIs

  5. Instale a CLI do Google Cloud.
  6. Para inicializar a CLI gcloud, execute o seguinte comando:

     
    gcloud init
  7. Crie credenciais seguindo estas etapas:
    • No Console do Google Cloud, acesse a página Credenciais.

      Abrir a página de credenciais da API

    • Clique em Criar credenciais e selecione Chave da conta de serviço.
    • Selecione Conta de serviço > Conta de serviço padrão do App Engine.
    • Clique em Criar.
    • Salve a chave em um lugar seguro.
  8. Instale o PHP e o Composer.
  9. Faça o download do Proxy do Cloud SQL e torne-o executável. Adicione também a localização do arquivo executável do Proxy do Cloud SQL à sua variável de ambiente PATH.
  10. Instale um cliente MySQL e verifique se a localização do arquivo executável mysql está na sua variável de ambiente PATH.
  1. Crie uma instância do Cloud SQL de segunda geração:

     
    gcloud sql instances create tutorial-sql-instance \
       
    --activation-policy=ALWAYS \
       
    --tier=db-n1-standard-1 \
       
    --region=us-central1
  2. Configure a senha de root para sua instância:

     
    gcloud sql users set-password root --instance tutorial-sql-instance \
       
    --password [YOUR_SQL_ROOT_PASSWORD] \
       
    --host %

    em que [YOUR_SQL_ROOT_PASSWORD] é uma senha segura de sua preferência.

  3. Faça o download e execute o Proxy do Cloud SQL:

     
    wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy
    cloud_sql_proxy
    \
       
    -dir /tmp/cloudsql \
       
    -instances=[YOUR_PROJECT_ID]:us-central1:tutorial-sql-instance=tcp:3306 \
       
    -credential_file=[PATH_TO_YOUR_SERVICE_ACCOUNT_JSON]

    em que

    • [YOUR_PROJECT_ID] é o código do projeto no Google Cloud.

    • [PATH_TO_YOUR_SERVICE_ACCOUNT_JSON] é o caminho para o arquivo JSON da conta de serviço que você fez o download anteriormente.

    A saída a seguir indica que o proxy está pronto para novas conexões:

     
    Listening on 127.0.0.1:3306 for [YOUR_PROJECT_ID]:us-central1:tutorial-sql-instance
    Ready for new connections
  4. Em um janela de terminal diferente, crie um novo banco de dados e um usuário:

     
    mysql -h 127.0.0.1 -u root --password=[YOUR_SQL_ROOT_PASSWORD]
    mysql
    > create database tutorialdb;
    mysql
    > create user 'tutorial-user'@'%' identified by '[YOUR_DATABASE_PASSWORD]';
    mysql
    > grant all on tutorialdb.* to 'tutorial-user'@'%';
    mysql
    > exit

    onde:

    • [YOUR_SQL_ROOT_PASSWORD] é a senha de root para sua instância do Cloud SQL.
    • [YOUR_DATABASE_PASSWORD] é uma senha segura de sua preferência.
  1. Clone o repositório de amostra:

     
    git clone https://github.com/GoogleCloudPlatform/php-docs-samples.git
  2. Acesse o diretório que contém o código de amostra:

     
    cd php-docs-samples/appengine/flexible/wordpress
  3. Instale as dependências:

     
    composer install
  4. Execute o script de ajuda:

     
    php wordpress.php setup -n \
       
    --dir=./wordpress-project \
       
    --db_instance=tutorial-sql-instance \
       
    --db_name=tutorialdb \
       
    --db_user=tutorial-user \
       
    --project_id=[YOUR_PROJECT_ID] \
       
    --db_password=[YOUR_DATABASE_PASSWORD]

    onde:

    • [YOUR_PROJECT_ID] é o ID do projeto;
    • [YOUR_DATABASE_PASSWORD] é a senha do seu banco de dados.

    O parâmetro -dir especifica a localização do seu projeto do WordPress.

  5. O script auxiliar grava informações em wordpress-project/wordpress/wp-config.php. Inspecione o conteúdo de wp-config.php para verificar se os nomes, o ID do projeto e a senha do banco de dados estão corretos.

     
    if ($onGae) {
       
    /** Production environment */
        define
    ('DB_HOST', ':/cloudsql/[YOUR_PROJECT_ID]:us-central1:tutorial-sql-instance');
       
    /** The name of the database for WordPress */
        define
    ('DB_NAME', 'tutorialdb');
       
    /** MySQL database username */
        define
    ('DB_USER', 'tutorial-user');
       
    /** MySQL database password */
        define
    ('DB_PASSWORD', '[YOUR_DATABASE_PASSWORD]');
    } else {
       
    /** Local environment */
        define
    ('DB_HOST', '127.0.0.1');
       
    /** The name of the database for WordPress */
        define
    ('DB_NAME', 'tutorialdb');
       
    /** MySQL database username */
        define
    ('DB_USER', 'tutorial-user');
       
    /** MySQL database password */
        define
    ('DB_PASSWORD', '[YOUR_DATABASE_PASSWORD]');
    }
  1. Acesse o diretório do seu projeto do WordPress:

     
    cd wordpress-project
  2. Implante o projeto do WordPress:

     
    gcloud app deploy \
       
    --promote --stop-previous-version app.yaml cron.yaml
  3. No navegador, digite o seguinte URL:

    https://PROJECT_ID.REGION_ID.r.appspot.com

    Substitua:

É importante manter o WordPress, plug-ins e temas atualizados. Para manter esses itens atualizados, use a ferramenta wp. Depois de uma atualização, você precisará reimplantar o projeto do WordPress.

  1. Atualize o WordPress:

     
    vendor/bin/wp core update --path=wordpress
  2. Atualize os plug-ins:

     
    vendor/bin/wp plugin update --all --path=wordpress
    # Just in case it updates any of the dropins, copy the files:
    cp wordpress
    /wp-content/plugins/batcache/advanced-cache.php \
        wordpress
    /wp-content/plugins/memcached/object-cache.php \
        wordpress
    /wp-content
  3. Atualize os temas:

     
    vendor/bin/wp theme update --all --path=wordpress
  4. Implante o projeto novamente:

     
    gcloud app deploy \
       
    --promote --stop-previous-version app.yaml cron.yaml

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto que os contém ou mantenha o projeto e exclua os recursos individuais.

 

O jeito mais fácil de evitar cobranças é excluindo o projeto que você criou para o tutorial.

Para excluir o projeto, faça o seguinte:

  1. No Console do Google Cloud, acesse a página Gerenciar recursos.

    Acessar “Gerenciar recursos”

  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

 

 

Se você não quer excluir seu projeto, pode reduzir custos excluindo versões não padrão do app.

 

Para excluir uma versão do app:

  1. No Console do Google Cloud, acesse a página Versões do App Engine.

    Acessar “Versões”

  2. Marque a caixa de seleção da versão não padrão do app que você quer excluir.
  3. Para excluir a versão do app, clique em  Excluir.

 

 

 

Para excluir uma instância do Cloud SQL:

  1. No Console do Google Cloud, acesse a página Instâncias.

    Acesse “Instâncias”

  2. Clique no nome da a instância de SQL que você quer excluir.
  3. Para excluir a instância, clique em  Excluir e siga as instruções.

Comments (3)

  1. Pablo Villalpando
    9 de dezembro de 2019

    SEO is always changing so leaving the strategy and tactics to Onum has more than paid for itself. We estimate ROI is over 10 to 1 – I can’t say enough about this team.

    • Pablo Villalpando
      9 de dezembro de 2019

      Onum has been extremely consistent and reliable through our entire engagement. Our results speak for themselves.

  2. Pablo Villalpando
    9 de dezembro de 2019

    It also gives you insights on your market’s behavior such as location, times of activity, frequency of searches, technologies used, product preferences, etc.

Comments are closed.