{"id":746,"date":"2022-02-07T12:37:56","date_gmt":"2022-02-07T11:37:56","guid":{"rendered":"https:\/\/www.anginf.de\/?p=746"},"modified":"2023-02-07T16:56:18","modified_gmt":"2023-02-07T15:56:18","slug":"overleaf-updaten","status":"publish","type":"post","link":"https:\/\/www.anginf.de\/?p=746","title":{"rendered":"Overleaf updaten"},"content":{"rendered":"\n<p>Eine alte Overleaf-Version lief bei mir lokal und diese wollte ich nun nach geraumer Zeit mal updaten. Installiert hatte ich die Version noch mithilfe des &#8222;docker-compose&#8220;, eine entsprechende <a href=\"https:\/\/www.anginf.de\/?p=714\" data-type=\"post\" data-id=\"714\">Anleitung<\/a> hatte ich hier bereits geschrieben.<\/p>\n\n\n\n<p>Inzwischen hat sich overleaf etwas weiterentwickelt und man arbeitet mit dem <a href=\"https:\/\/github.com\/overleaf\/toolkit\">Overleaf-Toolkit<\/a>, welches inkompatibel zu meiner bisherigen Installation ist.<\/p>\n\n\n\n<p>Zun\u00e4chst musste ich von allem ein Backup erstellen, was aufgrund nicht-aktueller Beispiele von der Overleaf-Seite nicht trival war:<\/p>\n\n\n\n<pre class=\"wp-block-code has-dark-gray-color has-text-color\"><code lang=\"bash\" class=\"language-bash\"># Backup-Verzeichnis erstellen und hineinwechseln, hier als Beispiel:\nmkdir -p ~\/backupsharelatex\/\ncd ~\/backupsharelatex\/\n# Die docker-compose.yml, welche zur Installation verwendet wurde, muss ebenfalls in dieses Verzeichnis. Danach kann das \"exit 0\" auskommentiert werden:\nexit 0\n# Backup mongodb\ndocker-compose exec mongo mongodump --archive=\"sharelatex-$(date +%Y%m%d).mongodb\" --db=\"sharelatex\"\ndocker cp mongo:sharelatex-$(date +%Y%m%d).mongodb .\ntar cvfz .\/sharelatex_data-$(date +%Y%m%d).tgz ~\/sharelatex_data\ndocker-compose stop sharelatex<\/code><\/pre>\n\n\n\n<p>Dann f\u00fchrt man die Schritte aus dem <a href=\"https:\/\/github.com\/overleaf\/toolkit\/blob\/master\/doc\/quick-start-guide.md\">Quick-Start-Guide<\/a> aus. Hier muss man ggfs. noch die Eintr\u00e4ge <code>SHARELATEX_LISTEN_IP<\/code> und <code>SHARELATEX_PORT<\/code> in der <code>config\/overleaf.rc<\/code> \u00e4ndern.<\/p>\n\n\n\n<p>Am Ende (nachdem wir bin\/up erfolgreich ausgef\u00fchrt und wieder beendet haben) unsere alten MongoDB-Daten wieder zu importieren. Dazu brauchen wir im Backup-Verzeichnis wie bereits erw\u00e4hnt die docker-compose.yml, sonst wird &#8222;mongo&#8220; nicht gefunden.<\/p>\n\n\n\n<pre class=\"wp-block-code has-dark-gray-color has-text-color\"><code lang=\"bash\" class=\"language-bash\">docker cp .\/sharelatex-$(date +%Y%m%d).mongodb mongo:sharelatex.mongodb\ndocker-compose exec mongo mongorestore --archive=\"sharelatex.mongodb\"<\/code><\/pre>\n\n\n\n<p>Falls noch Daten im &#8222;data&#8220;-Verzeichnis eures alten sharelatex\/data-Ordners liegen, m\u00fcssen diese ebenfalls noch kopiert werden:<\/p>\n\n\n\n<pre class=\"wp-block-code has-dark-gray-color has-text-color\"><code lang=\"bash\" class=\"language-bash\"># \"overleaf\" ist hier das Verzeichnis welches man im \"Quick-Start-Guide\" angelegt hatte.\ncd overleaf\/data\/sharelatex\/data\nsudo cp -r ~\/sharelatex_data\/data\/* .<\/code><\/pre>\n\n\n\n<p>Jetzt ist alles wieder importiert und wir k\u00f6nnen das System \u00fcber bin\/start korrekt starten.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Eine alte Overleaf-Version lief bei mir lokal und diese wollte ich nun nach geraumer Zeit mal updaten. Installiert hatte ich die Version noch mithilfe des &#8222;docker-compose&#8220;, eine entsprechende Anleitung hatte ich hier bereits geschrieben. Inzwischen hat sich overleaf etwas weiterentwickelt und man arbeitet mit dem Overleaf-Toolkit, welches inkompatibel zu meiner bisherigen Installation ist. Zun\u00e4chst musste &hellip; <a href=\"https:\/\/www.anginf.de\/?p=746\" class=\"more-link\"><span class=\"screen-reader-text\">Overleaf updaten<\/span> weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-746","post","type-post","status-publish","format-standard","hentry","category-allgemein"],"_links":{"self":[{"href":"https:\/\/www.anginf.de\/index.php?rest_route=\/wp\/v2\/posts\/746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.anginf.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.anginf.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.anginf.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.anginf.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=746"}],"version-history":[{"count":4,"href":"https:\/\/www.anginf.de\/index.php?rest_route=\/wp\/v2\/posts\/746\/revisions"}],"predecessor-version":[{"id":775,"href":"https:\/\/www.anginf.de\/index.php?rest_route=\/wp\/v2\/posts\/746\/revisions\/775"}],"wp:attachment":[{"href":"https:\/\/www.anginf.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=746"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.anginf.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=746"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.anginf.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}