{"id":28659,"date":"2021-06-16T13:10:00","date_gmt":"2021-06-16T10:10:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=28659"},"modified":"2021-10-18T03:59:24","modified_gmt":"2021-10-18T00:59:24","slug":"faca-backup-do-aplicativo-laravel-no-dropbox","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pt-pt\/faca-backup-do-aplicativo-laravel-no-dropbox\/","title":{"rendered":"Fa\u00e7a backup do aplicativo Laravel no Dropbox"},"content":{"rendered":"<p>Armazenar o backup do aplicativo na nuvem \u00e9 sempre recomendado. Voc\u00ea nunca sabe quando pode precisar restaurar seu site a partir do backup. Amazon S3, Google Cloud, Dropbox, etc. s\u00e3o alguns dos servi\u00e7os populares para armazenar o backup de seu aplicativo. Neste tutorial, estudamos como armazenar o backup do aplicativo Laravel no Dropbox. Se voc\u00ea deseja armazen\u00e1-lo no Amazon S3, consulte nosso artigo como armazenar o <a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-fazer-backup-do-aplicativo-laravel-e-armazena-lo-no-amazon-s3\/\" title=\"backup do Laravel no Amazon S3\" >backup do Laravel no Amazon S3<\/a>.<\/p>\n<p>O Dropbox oferece um servi\u00e7o API que pode enviar o backup de nosso aplicativo para o Dropbox. Quando se trata do Laravel, temos que configurar o sistema de arquivos Laravel e definir o Dropbox como um dos armazenadores de arquivos. Em seguida, ele ir\u00e1 interagir com a API do Dropbox nos bastidores.<\/p>\n<p>Durante a intera\u00e7\u00e3o com a API do Dropbox, precisamos ter um <strong>token<\/strong> de <strong>acesso<\/strong> da conta do Dropbox para autoriza\u00e7\u00e3o. Vamos primeiro pegar o token de acesso do Dropbox.<\/p>\n<h3>Obtenha o token de acesso do Dropbox<\/h3>\n<p>Para obter o token de acesso, crie um <a href=\"https:\/\/www.dropbox.com\/developers\/apps\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">aplicativo Dropbox<\/a>. Ap\u00f3s o login, clique no bot\u00e3o &#8216;Criar aplicativo&#8217;. Na pr\u00f3xima etapa, voc\u00ea solicitar\u00e1 a escolha de uma API. No tipo de acesso, escolha &#8216;Pasta do aplicativo&#8217; e d\u00ea o nome ao seu aplicativo. Consulte a imagem abaixo.<\/p>\n<p>Em seguida, na guia &#8216;Permiss\u00e3o&#8217;, adicione os escopos de arquivos e pastas para que nosso aplicativo possa gravar no Dropbox.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20191-6081cadca94f5.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20191-6081cadca94f5.png\" alt=\"Fa\u00e7a backup do aplicativo Laravel no Dropbox\" ><\/a><\/p>\n<p>Por fim, na guia &#8216;Configura\u00e7\u00f5es&#8217;, escolha &#8216;Sem expira\u00e7\u00e3o&#8217; no campo de expira\u00e7\u00e3o do token de acesso e clique no bot\u00e3o &#8216;Gerar&#8217; que lhe dar\u00e1 um token de acesso.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20191-6081cadd3be4f.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20191-6081cadd3be4f.png\" alt=\"Fa\u00e7a backup do aplicativo Laravel no Dropbox\" ><\/a><\/p>\n<h3>Configurar o sistema de arquivos Laravel para o Dropbox<\/h3>\n<p>O Laravel fornece um sistema de arquivos que fornece drivers para armazenamento local, SFTP e Amazon S3. Para adicionar o Dropbox como driver, precisamos configur\u00e1-lo um pouco. Requer que voc\u00ea adicione um adaptador Dropbox ao aplicativo Laravel. Voc\u00ea pode fazer isso seguindo as etapas abaixo.<\/p>\n<p>Instale a <a href=\"https:\/\/github.com\/spatie\/flysystem-dropbox\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">biblioteca spatie \/ flysystem-dropbox<\/a> usando o comando:<\/p>\n<pre><code>composer require spatie\/flysystem-dropbox<\/code><\/pre>\n<p>Ao instalar a biblioteca, crie um provedor de servi\u00e7os <code>DropboxServiceProvider<\/code>usando o comando abaixo.<\/p>\n<pre><code>php artisan make:provider DropboxServiceProvider<\/code><\/pre>\n<p>Em seguida, defina o driver personalizado <code>dropbox<\/code>no <code>boot<\/code>m\u00e9todo de <code>DropboxServiceProvider<\/code>.<\/p>\n<p><strong>appProvidersDropboxServiceProvider.php<\/strong><\/p>\n<pre><code>&lt;?php\n\u00a0\nnamespace AppProviders;\n\u00a0\nuse IlluminateSupportFacadesStorage;\nuse IlluminateSupportServiceProvider;\nuse LeagueFlysystemFilesystem;\nuse SpatieDropboxClient as DropboxClient;\nuse SpatieFlysystemDropboxDropboxAdapter;\n\u00a0\nclass DropboxServiceProvider extends ServiceProvider\n{\n\u00a0\u00a0\u00a0\u00a0...\n\u00a0\u00a0\u00a0\u00a0...\n\u00a0\u00a0\u00a0\u00a0public function boot()\n\u00a0\u00a0\u00a0\u00a0{\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Storage::extend('dropbox', function ($app, $config) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$client = new DropboxClient(\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$config['authorization_token']\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0);\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return new Filesystem(new DropboxAdapter($client));\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0});\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Registre o provedor <code>DropboxServiceProvider<\/code>de servi\u00e7os na <code>providers<\/code>matriz do <code>config\/app.php<\/code>arquivo.<\/p>\n<pre><code>'providers' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\/\/ ...\n\u00a0\u00a0\u00a0\u00a0AppProvidersDropboxServiceProvider::class,\n];<\/code><\/pre>\n<p>Depois disso, adicione o driver &#8216;dropbox&#8217; aos discos do sistema de arquivos. Abra o <code>config\/filesystems.php<\/code>arquivo e adicione o elemento &#8216;dropbox&#8217; ao <code>disks<\/code>array.<\/p>\n<pre><code>'disks' =&gt; [\n\u00a0\u00a0\u00a0\u00a0...\n\u00a0\u00a0\u00a0\u00a0...\n\u00a0\u00a0\u00a0\u00a0'dropbox' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'driver' =&gt; 'dropbox',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'authorization_token' =&gt; env('DROPBOX_AUTH_TOKEN'),\n\u00a0\u00a0\u00a0\u00a0],\n],<\/code><\/pre>\n<p>Aqui, estou obtendo o valor da constante &#8216;DROPBOX_AUTH_TOKEN&#8217; usando o <code>env()<\/code>m\u00e9todo. Isso significa que devemos adicionar essa constante no <code>.env<\/code>arquivo.<\/p>\n<p><strong>.env<\/strong><\/p>\n<pre><code>...\n...\nDROPBOX_AUTH_TOKEN=PASTE_ACCESS_TOKEN_HERE<\/code><\/pre>\n<h3>Instalar e configurar a biblioteca de backup do Laravel<\/h3>\n<p>At\u00e9 agora, conclu\u00edmos a adi\u00e7\u00e3o do adaptador Dropbox ao aplicativo Laravel. Agora, instale a <a href=\"https:\/\/github.com\/spatie\/laravel-backup\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">biblioteca spatie \/ laravel-backup<\/a> que nos permite enviar backup nos diferentes servi\u00e7os em nuvem, incluindo Dropbox. Execute o comando abaixo para instala\u00e7\u00e3o.<\/p>\n<pre><code>composer require spatie\/laravel-backup<\/code><\/pre>\n<p>Assim que a biblioteca estiver instalada, publique o arquivo de configura\u00e7\u00e3o <code>config\/backup.php<\/code>usando o comando:<\/p>\n<pre><code>php artisan vendor:publish --provider=\"SpatieBackupBackupServiceProvider\"<\/code><\/pre>\n<p>Depois disso, abra <code>config\/backup.php<\/code>e adicione a &#8216;caixa de dep\u00f3sito&#8217; ao array &#8216;discos&#8217;.<\/p>\n<pre><code>&lt;?php\n\u00a0\u00a0\u00a0\u00a0\nreturn [\n\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0.......\n\u00a0\u00a0\u00a0\u00a0.......\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0'destination' =&gt; [\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0......\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0......\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/*\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0* The disk names on which the backups will be stored.\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0*\/\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'disks' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'dropbox',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0],\n\u00a0\u00a0\u00a0\u00a0......\n\u00a0\u00a0\u00a0\u00a0......<\/code><\/pre>\n<p>Opcionalmente, voc\u00ea tamb\u00e9m pode definir seu endere\u00e7o de e-mail para o qual uma notifica\u00e7\u00e3o ser\u00e1 enviada sobre o status do backup. Voc\u00ea encontrar\u00e1 esta op\u00e7\u00e3o na <code>mail<\/code>matriz do <code>config\/backup.php<\/code>arquivo.<\/p>\n<h3>Fa\u00e7a backup do aplicativo Laravel no Dropbox<\/h3>\n<p>Conclu\u00edmos todas as configura\u00e7\u00f5es b\u00e1sicas necess\u00e1rias para fazer o backup do aplicativo Laravel no Dropbox. V\u00e1 at\u00e9 o terminal e atire no comando abaixo:<\/p>\n<pre><code>php artisan backup:run<\/code><\/pre>\n<p>O comando acima ir\u00e1 criar uma pasta &#8216;Laravel&#8217; para sua conta do Dropbox e armazenar o zip de backup dentro dela. Este zip de backup cont\u00e9m os arquivos, pastas e banco de dados do aplicativo Laravel.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20191-6081cadd3be4f.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20191-6081cadd3be4f.png\" alt=\"Fa\u00e7a backup do aplicativo Laravel no Dropbox\" ><\/a><\/p>\n<p>Este \u00e9 o processo manual de fazer um backup do Laravel. O usu\u00e1rio tamb\u00e9m pode agendar a tarefa de backup. Para isso, adicione o c\u00f3digo abaixo ao <code>schedule<\/code>m\u00e9todo de <code>app\/Console\/Kernel.php<\/code>arquivo.<\/p>\n<pre><code>protected function schedule(Schedule $schedule)\n{\n\u00a0\u00a0\u00a0\u00a0$schedule-&gt;command('backup:run')-&gt;daily()-&gt;at('06:00');\n}<\/code><\/pre>\n<p>Aqui, agendo o backup di\u00e1rio para as 6h. O usu\u00e1rio pode alterar este tempo de acordo com sua necessidade.<\/p>\n<p>Espero que voc\u00ea saiba como armazenar um backup do aplicativo Laravel no Dropbox. Eu gostaria de ouvir seus pensamentos e sugest\u00f5es na se\u00e7\u00e3o de coment\u00e1rios abaixo.<\/p>\n<h4>Artigos relacionados<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-fazer-upload-de-arquivo-para-s3-usando-o-sistema-de-arquivos-laravel\/\" title=\"Como fazer upload de arquivo para S3 usando o sistema de arquivos Laravel\">Como fazer upload de arquivo para S3 usando o sistema de arquivos Laravel<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/carregar-arquivos-para-o-amazon-s3-usando-aws-php-sdk\/\" title=\"Carregar arquivos para o Amazon S3 usando AWS PHP SDK\">Carregar arquivos para o Amazon S3 usando AWS PHP SDK<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-fazer-upload-de-imagens-para-outro-servidor-atraves-de-ftp-no-laravel\/\" title=\"Como fazer upload de imagens para outro servidor via FTP no Laravel\">Como fazer upload de imagens para outro servidor via FTP no Laravel<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Voc\u00ea est\u00e1 pensando em fazer backup do aplicativo Laravel no Dropbox? Neste artigo, estudamos como algu\u00e9m pode armazenar o backup de seus aplicativos Laravel.<\/p>\n","protected":false},"author":1,"featured_media":20192,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[502],"tags":[848],"class_list":["post-28659","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/28659","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/comments?post=28659"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/28659\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media\/20192"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media?parent=28659"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/categories?post=28659"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/tags?post=28659"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}