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.
Objetivos
- 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.
Custos
Antes de começar
- 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.
No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
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.
Ative as APIs necessárias.
- Instale a CLI do Google Cloud.
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
- Crie credenciais seguindo estas etapas:
No Console do Google Cloud, acesse a página Credenciais.
- 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.
- Instale o PHP e o Composer.
- 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
. - Instale um cliente MySQL e verifique se a localização do arquivo executável
mysql
está na sua variável de ambientePATH
.
Como criar e configurar uma instância de segunda geração do Cloud SQL
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-central1Configure 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.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 connectionsEm 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> exitonde:
[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.
Como configurar o projeto do WordPress
Clone o repositório de amostra:
git clone https://github.com/GoogleCloudPlatform/php-docs-samples.git
Acesse o diretório que contém o código de amostra:
cd php-docs-samples/appengine/flexible/wordpress
Instale as dependências:
composer install
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.O script auxiliar grava informações em
wordpress-project/wordpress/wp-config.php
. Inspecione o conteúdo dewp-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]');
}
Como implantar o projeto do WordPress no ambiente flexível do App Engine
Acesse o diretório do seu projeto do WordPress:
cd wordpress-project
Implante o projeto do WordPress:
gcloud app deploy \
--promote --stop-previous-version app.yaml cron.yamlNo navegador, digite o seguinte URL:
https://PROJECT_ID.REGION_ID.r.appspot.com
Substitua:
PROJECT_ID
: é o ID do projeto do Google Cloud.REGION_ID
: um código que o App Engine atribui ao seu aplicativo
Como atualizar o WordPress, plug-ins e temas
É 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.
Atualize o WordPress:
vendor/bin/wp core update --path=wordpress
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-contentAtualize os temas:
vendor/bin/wp theme update --all --path=wordpress
Implante o projeto novamente:
gcloud app deploy \
--promote --stop-previous-version app.yaml cron.yaml
Limpeza
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.
Exclua o projeto
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:
- No Console do Google Cloud, acesse a página Gerenciar recursos.
- Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
- Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.
Excluir versões não padrão do app
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:
- No Console do Google Cloud, acesse a página Versões do App Engine.
- Marque a caixa de seleção da versão não padrão do app que você quer excluir.
- Para excluir a versão do app, clique em delete Excluir.
Excluir a instância do Cloud SQL
Para excluir uma instância do Cloud SQL:
- No Console do Google Cloud, acesse a página Instâncias.
- Clique no nome da a instância de SQL que você quer excluir.
- Para excluir a instância, clique em delete Excluir e siga as instruções.
Comments (3)
Comments are closed.
Pablo Villalpando
9 de dezembro de 2019SEO 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 2019Onum has been extremely consistent and reliable through our entire engagement. Our results speak for themselves.
Pablo Villalpando
9 de dezembro de 2019It also gives you insights on your market’s behavior such as location, times of activity, frequency of searches, technologies used, product preferences, etc.