Erstellen Sie mit Docker eine lokale Couchbase-Umgebung

Überblick

Ein Memo beim Erstellen der lokalen Umgebung von Couchbase mit Docker

Hintergrund

Es gab eine lokale Umgebung von Vagrant,

Zweck

Ersetzen Sie die lokale Umgebung durch Docker.

Arbeitsprotokoll

Versuchen Sie, das Couchbase-Bild zu verschieben.

Lassen Sie uns zunächst den Couchbase-Container starten, ohne detaillierte Einstellungen vorzunehmen.

-Überprüfen Sie das Bild im Couchbase Docker Hub-Repository. スクリーンショット 2020-09-20 13.48.25.png

→ Da die Produktionsversion "4.5.1" ist, verwenden Sie "community-4.5.1".

--Starten Sie den Container

Beginnen Sie vorerst wie unter "Beschreibung" beschrieben

$ docker run -d --name db -p 8091-8094:8091-8094 -p 11210:11210 couchbase:community-4.5.1
$ docker ps

↓ OK starten スクリーンショット 2020-09-20 13.57.20.png

Greifen Sie mit einem Browser auf http: //0.0.0.0: 8091 / zu und bestätigen Sie, dass die Couchbase-Konsole angezeigt wird. 0_0_0_0_8091_ui_index_html__.jpg Sie können das Konto und den Bucket manuell einstellen, indem Sie auf "Setup" klicken. Da der Zweck jedoch die Codierung ist, werden wir es hier überspringen.

Überprüfen Sie den Betrieb vorerst. ..

Codiert

Erstellen Sie Dockerfile, docker-compose.yaml

Die folgenden Einstellungen sind erforderlich, um die lokale Umgebung einzurichten.

Dockerfile (auch docker-compose.yaml) wird beschrieben, um die obigen Einstellungen in den Code einzufügen.

#Verzeichnisaufbau
local-env
├ docker-compose.yaml
└ mbe-couchbase-container
  ├ byfield      
  │ └ all.ddoc   #Definitionsdatei anzeigen
  ├ Dockerfile   #Couchbase Docker-Datei
  └ configure.sh #Bash-Skript zum Konfigurieren von Couchbase
# docker-compose.yaml
version: "3.7"
services:
  mbe-couchbase:
    build: ./mbe-couchbase-container
    ports:
      - 8091:8091
      - 8092:8092
      - 8093:8093
      - 8094:8094
      - 11210:11210
      - 11211:11211
    environment:
      - COUCHBASE_ADMINISTRATOR_USERNAME=couchbase
      - COUCHBASE_ADMINISTRATOR_PASSWORD=lcouchbase1
#Erstellen Sie eine Docker-Datei
FROM couchbase:community-4.5.1

#Kopieren Sie die Couchbase-Initialisierungsshell in den Container
COPY ./configure.sh /opt/couchbase
COPY ./byfield/ /opt/couchbase

#Ausführungsshell für die Couchbase-Konfiguration
CMD [ "/opt/couchbase/configure.sh" ]
#Couchbase-Konfigurationsshell
set -m

#Serverstart
/entrypoint.sh couchbase-server &

#Stellen Sie die Wartezeit grob ein, bis der API-Server TODO startet:Ich möchte den Serverstart erkennen und mit der Verarbeitung fortfahren.
sleep 30

#Cluster-Speicherzuordnung
curl -v -X POST http://127.0.0.1:8091/pools/default -d memoryQuota=4096 -d indexMemoryQuota=4096

#Serviceeinstellungen
curl -v http://127.0.0.1:8091/node/controller/setupServices -d services=kv%2cn1ql%2Cindex

#Einstellungen für die Anmeldeinformationen des Couchbase-Servers
curl -v http://127.0.0.1:8091/settings/web -d port=8091 -d username=$COUCHBASE_ADMINISTRATOR_USERNAME -d password=$COUCHBASE_ADMINISTRATOR_PASSWORD

#Schaufelkappenlift(Die maximale Anzahl von Buckets beträgt standardmäßig 10,,Wenn Sie mehr erstellen möchten, müssen Sie die folgenden Einstellungen vornehmen)
curl -v -u $COUCHBASE_ADMINISTRATOR_USERNAME:$COUCHBASE_ADMINISTRATOR_PASSWORD -X POST http://127.0.0.1:8091/internalSettings -d maxBucketCount=20

#Eimererstellung
curl -v -u $COUCHBASE_ADMINISTRATOR_USERNAME:$COUCHBASE_ADMINISTRATOR_PASSWORD -X POST http://127.0.0.1:8091/pools/default/buckets -d name=bucket_name -d bucketType=couchbase -d ramQuotaMB=100 -d authType=sasl -d saslPassword=ladd_personal_info1

echo "please wait 30 sec..."
sleep 30
#Einstellungen anzeigen
curl -v -u $COUCHBASE_ADMINISTRATOR_USERNAME:$COUCHBASE_ADMINISTRATOR_PASSWORD -X PUT -H "Content-Type: application/json" http://127.0.0.1:8092/bucket_name/_design/api%2Ftest -d @/opt/couchbase/all.ddoc


sleep 15

#Vordergrundausführung
fg 1

$ docker-compose up -d mbe-couchbase

Bestätigen Sie den Bucket-Start.

Impressionen

Couchbase findet nicht viele Artikel, auch wenn ich google. Die offizielle Referenz war solide und es war nur eine einfache Implementierung, so dass ich keine Probleme hatte. .. Ist Couchbase nicht beliebt? Es scheint, dass die Cloud-Version vor einiger Zeit herausgekommen ist, aber ich denke nicht, dass sie beim Umzug in die Cloud verwendet wird.

Referenz

https://blog.couchbase.com/docker-deploy-containerized-java-couchbase-web-application/

Recommended Posts

Erstellen Sie mit Docker eine lokale Couchbase-Umgebung
Erstellen einer Docker-Umgebung mit WSL
Erstellen Sie DynamoDB local mit Docker
Erstellen Sie mit Docker eine Node.js-Umgebung
Erstellen Sie mit Laradock eine Docker + Laravel-Umgebung
Erstellen Sie mit Docker eine PureScript-Entwicklungsumgebung
Erstellen Sie mit Docker eine Wordpress-Entwicklungsumgebung
[Docker] Erstellen Sie die Ausführungsumgebung von Jupyter Lab mit Docker
Erstellen Sie eine Umgebung mit Docker unter AWS
Erstellen Sie mit Docker eine TensorFlow-Betriebsüberprüfungsumgebung
So erstellen Sie eine Rails 6-Umgebung mit Docker
Erstellen Sie eine Laravel / Docker-Umgebung mit VSCode devcontainer
Erstellen Sie mit Docker schnell eine WordPress-Entwicklungsumgebung
Erstellen Sie mit Docker (Ubuntu) eine Mecab-Umgebung (NEologd Dictionary).
[Rails] So erstellen Sie eine Umgebung mit Docker
Konstruktions- und Entwicklungsverfahren für lokale WordPress-Umgebungen mit Docker
Erstellen Sie eine Debug-Umgebung auf einem Container. Erstellen Sie mit Docker eine lokale Entwicklungsumgebung für Rails-Tutorials.
Erstellen Sie mit Docker eine lokale Entwicklungsumgebung für Rails-Tutorials (Rails 6 + PostgreSQL + Webpack)
[Docker] Rails 5.2-Umgebungskonstruktion mit Docker
So erstellen Sie eine Docker-Umgebung mit Gradle for IntelliJ
Erstellen Sie mit Docker eine Ruby2.7.x + Rails6.0.x + MySQL8.0.x-Umgebung
[Hinweis] Erstellen Sie eine Python3-Umgebung mit Docker in EC2
Build Rails (API) x MySQL x Nuxt.js Umgebung mit Docker
Erstellen Sie mit Docker eine Vue3-Umgebung!
Erstellen Sie die Node.js-Umgebung mit Docker Compose
Erstellen Sie mit Pleiades 4.8 eine Tomcat 8.5-Umgebung
Umgebungsbau mit Docker für Anfänger
So erstellen Sie mit Docker ~ Express ~ eine [TypeScript + Vue + Express + MySQL] -Umgebung
Erstellen Sie mit Docker eine SolrCloud-Überprüfungsumgebung
Erstellen Sie mit Eclipse eine Jooby-Entwicklungsumgebung
[Umgebungskonstruktion mit Docker] Rails 6 & MySQL 8
Erstellen Sie eine Unity-Entwicklungsumgebung auf Docker
Build Go-Entwicklungsumgebung mit WSL2 + Docker Desktop + VSCode (Remote - Container)
Ich habe versucht, mit Docker eine Plant UML Server-Umgebung zu erstellen
So erstellen Sie mit Docker ~ MySQL ~ eine [TypeScript + Vue + Express + MySQL] -Umgebung
So erstellen Sie eine Rails + Vue + MySQL-Umgebung mit Docker [neueste Version 2020/09]
Erstellen Sie mit Docker Compose eine Entwicklungsumgebung für Django + MySQL + nginx
So erstellen Sie mit Docker ~ Sequelize ~ eine [TypeScript + Vue + Express + MySQL] -Umgebung
Aufbau einer GPU-Umgebung mit Docker [Version Oktober 2020]
Schienenumgebungskonstruktion mit Docker (persönliche Apokalypse)
Erstellen einer Rails 6- und PostgreSQL-Umgebung mit Docker
Aufbau einer Laravel-Entwicklungsumgebung mit Docker (Mac)