{"id":6432,"date":"2019-11-07T21:09:14","date_gmt":"2019-11-07T19:09:14","guid":{"rendered":"https:\/\/u-labs.de\/portal\/?p=6432"},"modified":"2019-11-07T21:09:17","modified_gmt":"2019-11-07T19:09:17","slug":"couchdb-mit-docker-compose-auf-docker-installieren","status":"publish","type":"post","link":"https:\/\/u-labs.de\/portal\/couchdb-mit-docker-compose-auf-docker-installieren\/","title":{"rendered":"CouchDB mit Docker-Compose auf Docker installieren"},"content":{"rendered":"<p>CouchDB ist ein bekannter Vertreter der sogenannten <em>NoSQL<\/em> Datenbanken.  Im Docker-Hub werden offizielle Images angeboten. Dadurch ist es sehr einfach, mithilfe von Docker eine lauff\u00e4hige Instanz zu installieren. Hierf\u00fcr erstellen wir eine <strong>docker-compose.yml<\/strong> Datei:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-yaml\" data-line=\"\">volumes:\n    couchdb-data:\n    \nservices: \n  couchdb:\n    image: &quot;couchdb:2&quot;\n    mem_limit: 1GB\n    restart: always\n\n# Optional\n#    networks:\n#      - your-network\n        \n    ports: \n      - 5984:5984\n\n    env_file:\n      - credentials.env\n\n    volumes: \n      - couchdb-data:\/opt\/couchdb\/etc\/\n\n# Optional\n#    labels:\n#      - &quot;traefik.enable=false&quot;<\/code><\/pre>\n<p>Dies erzeugt einen CouchDB-Container mit dem neusten V2 Release, limitiert den RAM auf 1GB, startet den Container automatisch beim Booten und leitet den Standartport 5984 auf den gleichen Port des Hostsystemes. Die Angabe eines Netzwerkes ist optional, standardm\u00e4\u00dfig legt Docker-Compose f\u00fcr jedes Compose-File ein eigenes an. F\u00fcr die persistenten Daten liegt ein Volume <strong>couchdb-data<\/strong> bereit. So gehen Datenbankinhalte nicht verloren, wenn der Container neu erstellt wird. <\/p>\n<p>Zus\u00e4tzlich wird auf die Datei <strong>credentials.env<\/strong> verwiesen. Diese Datei legen wir ebenfalls an und definieren darin Benutzer und Passwort des Administrator-Accounts: <\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">COUCHDB_USER=admin\nCOUCHDB_PASSWORD=password<\/code><\/pre>\n<p>Damit sind wir bereit, um den Datenbank-Container zu starten:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">docker-compose up<\/code><\/pre>\n<p>Wahlweise kann noch der <strong>-d<\/strong> Schalter angegeben werden, um den Container im Hintergrund zu starten. <\/p>\n<p>Nun auf dem jeweiligen System im Browser <a href=\"http:\/\/localhost:5984\/_utils\" target=\"_blank\" rel=\"nofollow\">http:\/\/localhost:5984\/_utils<\/a> aufrufen, um den Adminbereich zu \u00f6ffnen. Dort kann man sich mit den zuvor definierten Zugangsdaten anmelden. Wie man es von den Verwaltungssystemen relationaler Datenbanken her kennt, ist es m\u00f6glich Datenbanken anzulegen, vorhandene Datens\u00e4tze einzusehen, Anpassungen darin vorzunehmen etc.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>CouchDB ist ein bekannter Vertreter der sogenannten NoSQL Datenbanken. Im Docker-Hub werden offizielle Images angeboten. Dadurch ist es sehr einfach, mithilfe von Docker eine lauff\u00e4hige Instanz zu installieren. Hierf\u00fcr erstellen wir eine docker-compose.yml Datei: Dies erzeugt einen CouchDB-Container mit dem neusten V2 Release, limitiert den RAM auf 1GB, startet den Container automatisch beim Booten und &#8230;<\/p>\n","protected":false},"author":5,"featured_media":6433,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[78],"tags":[770,59,497,771],"class_list":["post-6432","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software","tag-couchdb","tag-datenbank","tag-docker","tag-docker-compose"],"_links":{"self":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts\/6432","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/comments?post=6432"}],"version-history":[{"count":11,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts\/6432\/revisions"}],"predecessor-version":[{"id":6455,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/posts\/6432\/revisions\/6455"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/media\/6433"}],"wp:attachment":[{"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/media?parent=6432"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/categories?post=6432"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/u-labs.de\/portal\/wp-json\/wp\/v2\/tags?post=6432"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}