(window.webpackJsonp=window.webpackJsonp||[]).push([[57],{sWWI:function(e,n,t){"use strict";t.r(n),t.d(n,"_frontmatter",(function(){return p})),t.d(n,"default",(function(){return c}));var a=t("k1TG"),r=t("8o2o"),o=(t("q1tI"),t("7ljp")),s=t("hhGP"),p=(t("qKvR"),{});void 0!==p&&p&&p===Object(p)&&Object.isExtensible(p)&&!p.hasOwnProperty("__filemeta")&&Object.defineProperty(p,"__filemeta",{configurable:!0,value:{name:"_frontmatter",filename:"src/pages/docs/installation/upgrading_superset.mdx"}});var i=s.a;function c(e){var n=e.components,t=Object(r.a)(e,["components"]);return Object(o.b)(i,Object(a.a)({},t,{components:n,mdxType:"MDXLayout"}),Object(o.b)("h2",{id:"upgrading-superset"},"Upgrading Superset"),Object(o.b)("h3",{id:"docker-compose"},"Docker Compose"),Object(o.b)("p",null,"First make sure to wind down the running containers in Docker Compose:"),Object(o.b)("pre",null,Object(o.b)("code",{className:"language-bash",parentName:"pre"},"docker-compose down\n")),Object(o.b)("p",null,"Then, update the folder that mirrors the ",Object(o.b)("inlineCode",{parentName:"p"},"incubator-superset")," repo through git:"),Object(o.b)("pre",null,Object(o.b)("code",{className:"language-bash",parentName:"pre"},"cd incubator_superset/\ngit pull origin master\n")),Object(o.b)("p",null,"Then, restart the containers and any changed Docker images will be automatically pulled down:"),Object(o.b)("pre",null,Object(o.b)("code",{className:"language-bash",parentName:"pre"},"docker-compose up\n")),Object(o.b)("h3",{id:"updating-superset-manually"},"Updating Superset Manually"),Object(o.b)("p",null,"To upgrade superset in a native installation, run the following commands:"),Object(o.b)("pre",null,Object(o.b)("code",{className:"language-bash",parentName:"pre"},"pip install apache-superset --upgrade\nsuperset db upgrade\nsuperset init\n")),Object(o.b)("p",null,"While upgrading superset should not delete your charts and dashboards, we recommend following best\npractices and to backup your metadata database before upgrading. Before upgrading production, we\nrecommend upgrading in a staging environment and upgrading production finally during off-peak usage."))}void 0!==c&&c&&c===Object(c)&&Object.isExtensible(c)&&!c.hasOwnProperty("__filemeta")&&Object.defineProperty(c,"__filemeta",{configurable:!0,value:{name:"MDXContent",filename:"src/pages/docs/installation/upgrading_superset.mdx"}}),c.isMDXComponent=!0}}]);
//# sourceMappingURL=component---src-pages-docs-installation-upgrading-superset-mdx-647a883d28a435afe809.js.map