{"id":29460,"date":"2021-06-16T12:50:00","date_gmt":"2021-06-16T09:50:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=29460"},"modified":"2021-10-17T16:16:44","modified_gmt":"2021-10-17T13:16:44","slug":"copia-de-seguridad-de-la-aplicacion-laravel-en-dropbox","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/es\/copia-de-seguridad-de-la-aplicacion-laravel-en-dropbox\/","title":{"rendered":"Copia de seguridad de la aplicaci\u00f3n Laravel en Dropbox"},"content":{"rendered":"<p>Siempre se recomienda almacenar la copia de seguridad de la aplicaci\u00f3n en la nube. Nunca se sabe cu\u00e1ndo es posible que deba restaurar su sitio desde la copia de seguridad. Amazon S3, Google Cloud, Dropbox, etc. son algunos de los servicios populares para almacenar la copia de seguridad de su aplicaci\u00f3n. En este tutorial, estudiamos c\u00f3mo almacenar la copia de seguridad de la aplicaci\u00f3n Laravel en Dropbox. Si desea almacenarlo en Amazon S3, consulte nuestro art\u00edculo sobre el almacenamiento de la <a href=\"https:\/\/themewp.inform.click\/es\/como-realizar-una-copia-de-seguridad-de-la-aplicacion-laravel-y-almacenarla-en-amazon-s3\/\" title=\"copia de seguridad de Laravel en Amazon S3\" >copia de seguridad de Laravel en Amazon S3<\/a>.<\/p>\n<p>Dropbox ofrece un servicio de API que puede enviar la copia de seguridad de nuestra aplicaci\u00f3n a Dropbox. Cuando se trata de Laravel, tenemos que configurar Laravel Filesystem y configurar Dropbox como uno de los archivos de almacenamiento. Luego interactuar\u00e1 con la API de Dropbox entre bastidores.<\/p>\n<p>Durante la interacci\u00f3n con la API de Dropbox, necesitamos tener un <strong>token<\/strong> de <strong>acceso<\/strong> de la cuenta de Dropbox para la autorizaci\u00f3n. Primero tomemos el token de acceso a Dropbox.<\/p>\n<h3>Obtener token de acceso a Dropbox<\/h3>\n<p>Para obtener el token de acceso, cree una <a href=\"https:\/\/www.dropbox.com\/developers\/apps\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">aplicaci\u00f3n de Dropbox<\/a>. Al iniciar sesi\u00f3n, haga clic en el bot\u00f3n &#8216;Crear aplicaci\u00f3n&#8217;. En el siguiente paso, le pedir\u00e1 que elija una API. Debajo del tipo de acceso, elija &#8216;Carpeta de aplicaciones&#8217; y d\u00e9 el nombre a su aplicaci\u00f3n. Consulte la captura de pantalla a continuaci\u00f3n.<\/p>\n<p>A continuaci\u00f3n, desde la pesta\u00f1a &#8216;Permiso&#8217; agregue los alcances de los archivos y carpetas para que nuestra aplicaci\u00f3n pueda escribir en 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=\"Copia de seguridad de la aplicaci\u00f3n Laravel en Dropbox\" ><\/a><\/p>\n<p>Finalmente, desde la pesta\u00f1a &#8216;Configuraci\u00f3n&#8217;, elija &#8216;Sin vencimiento&#8217; del campo de vencimiento del token de acceso y haga clic en el bot\u00f3n &#8216;Generar&#8217; que le dar\u00e1 un token de acceso.<\/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=\"Copia de seguridad de la aplicaci\u00f3n Laravel en Dropbox\" ><\/a><\/p>\n<h3>Configurar el sistema de archivos Laravel para Dropbox<\/h3>\n<p>Laravel proporciona un sistema de archivos que proporciona controladores para almacenamiento local, SFTP y Amazon S3. Para agregar Dropbox como controlador, necesitamos configurarlo un poco. Requiere que agregue un adaptador de Dropbox a la aplicaci\u00f3n Laravel. Puede hacerlo siguiendo los pasos a continuaci\u00f3n.<\/p>\n<p>Instale la <a href=\"https:\/\/github.com\/spatie\/flysystem-dropbox\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">biblioteca Spatie \/ Flysystem-Dropbox<\/a> con el comando:<\/p>\n<pre><code>composer require spatie\/flysystem-dropbox<\/code><\/pre>\n<p>Al instalar la biblioteca, cree un proveedor de servicios <code>DropboxServiceProvider<\/code>usando el siguiente comando.<\/p>\n<pre><code>php artisan make:provider DropboxServiceProvider<\/code><\/pre>\n<p>A continuaci\u00f3n, defina el controlador personalizado <code>dropbox<\/code>en el <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 el proveedor de servicios <code>DropboxServiceProvider<\/code>en la <code>providers<\/code>matriz de <code>config\/app.php<\/code>archivos.<\/p>\n<pre><code>'providers' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\/\/ ...\n\u00a0\u00a0\u00a0\u00a0AppProvidersDropboxServiceProvider::class,\n];<\/code><\/pre>\n<p>Despu\u00e9s de esto, agregue el controlador &#8216;dropbox&#8217; a los discos del sistema de archivos. Abra el <code>config\/filesystems.php<\/code>archivo y agregue el elemento &#8216;dropbox&#8217; a la <code>disks<\/code>matriz.<\/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>Aqu\u00ed, obtengo el valor de la constante &#8216;DROPBOX_AUTH_TOKEN&#8217; usando el <code>env()<\/code>m\u00e9todo. Significa que debemos agregar esta constante en el <code>.env<\/code>archivo.<\/p>\n<p><strong>.env<\/strong><\/p>\n<pre><code>...\n...\nDROPBOX_AUTH_TOKEN=PASTE_ACCESS_TOKEN_HERE<\/code><\/pre>\n<h3>Instalar y configurar la biblioteca de copia de seguridad de Laravel<\/h3>\n<p>Hasta ahora, hemos terminado de agregar el adaptador de Dropbox a la aplicaci\u00f3n Laravel. Ahora, instale la <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 copias de seguridad en los diferentes servicios en la nube, incluido Dropbox. Ejecute el siguiente comando para la instalaci\u00f3n.<\/p>\n<pre><code>composer require spatie\/laravel-backup<\/code><\/pre>\n<p>Una vez que la biblioteca est\u00e9 instalada, publique el archivo de configuraci\u00f3n <code>config\/backup.php<\/code>usando el comando:<\/p>\n<pre><code>php artisan vendor:publish --provider=\"SpatieBackupBackupServiceProvider\"<\/code><\/pre>\n<p>Despu\u00e9s de esto, abra <code>config\/backup.php<\/code>y agregue el &#8216;dropbox&#8217; a la matriz de &#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, tambi\u00e9n puede configurar su direcci\u00f3n de correo electr\u00f3nico a la que se enviar\u00e1 una notificaci\u00f3n sobre el estado de la copia de seguridad. Encontrar\u00e1 esta opci\u00f3n en la <code>mail<\/code>matriz de <code>config\/backup.php<\/code>archivos.<\/p>\n<h3>Copia de seguridad de la aplicaci\u00f3n Laravel en Dropbox<\/h3>\n<p>Hemos completado toda la configuraci\u00f3n b\u00e1sica necesaria para realizar una copia de seguridad de la aplicaci\u00f3n Laravel en Dropbox. Ve a la terminal y dispara el siguiente comando:<\/p>\n<pre><code>php artisan backup:run<\/code><\/pre>\n<p>El comando anterior crear\u00e1 una carpeta &#8216;Laravel&#8217; en su cuenta de Dropbox y almacenar\u00e1 el zip de respaldo en su interior. Este zip de respaldo contiene los archivos, carpetas y base de datos de la aplicaci\u00f3n 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=\"Copia de seguridad de la aplicaci\u00f3n Laravel en Dropbox\" ><\/a><\/p>\n<p>Este es el proceso manual de hacer una copia de seguridad de Laravel. El usuario tambi\u00e9n puede programar la tarea de copia de seguridad. Para esto, agregue el siguiente c\u00f3digo al <code>schedule<\/code>m\u00e9todo de <code>app\/Console\/Kernel.php<\/code>archivo.<\/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>Aqu\u00ed, programo la copia de seguridad diaria a las 06:00. El usuario puede cambiar este tiempo seg\u00fan sus necesidades.<\/p>\n<p>Espero que sepas c\u00f3mo almacenar una copia de seguridad de la aplicaci\u00f3n Laravel en Dropbox. Me gustar\u00eda escuchar sus pensamientos y sugerencias en la secci\u00f3n de comentarios a continuaci\u00f3n.<\/p>\n<h4>Art\u00edculos relacionados<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/es\/como-cargar-un-archivo-a-s3-usando-el-sistema-de-archivos-laravel\/\" title=\"C\u00f3mo cargar un archivo a S3 usando el sistema de archivos Laravel\">C\u00f3mo cargar un archivo a S3 usando el sistema de archivos Laravel<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/es\/cargar-archivos-en-amazon-s3-mediante-aws-php-sdk\/\" title=\"Cargar archivos en Amazon S3 mediante AWS PHP SDK\">Cargar archivos en Amazon S3 mediante AWS PHP SDK<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/es\/como-subir-imagenes-a-otro-servidor-a-traves-de-ftp-en-laravel\/\" title=\"C\u00f3mo subir im\u00e1genes a otro servidor a trav\u00e9s de FTP en Laravel\">C\u00f3mo subir im\u00e1genes a otro servidor a trav\u00e9s de FTP en Laravel<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fuente de grabaci\u00f3n:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00bfEst\u00e1 buscando hacer una copia de seguridad de la aplicaci\u00f3n Laravel en Dropbox? En estos art\u00edculos, estudiamos c\u00f3mo se puede almacenar la copia de seguridad de sus aplicaciones de 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":[495],"tags":[849],"class_list":["post-29460","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-affiai-es"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/posts\/29460","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/comments?post=29460"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/posts\/29460\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/media\/20192"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/media?parent=29460"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/categories?post=29460"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/es\/wp-json\/wp\/v2\/tags?post=29460"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}