Créer un environnement local Couchbase avec Docker

Aperçu

Un mémo lors de la construction de l'environnement local de Couchbase avec Docker

Contexte

Il y avait un environnement local de Vagrant,

Objectif

Remplacez l'environnement local par Docker.

Journal de travail

Essayez de déplacer l'image de l'assise du canapé.

Commençons par lancer le conteneur Couchbase sans effectuer de réglages détaillés.

-Vérifiez l'image dans Couchbase docker hub repository スクリーンショット 2020-09-20 13.48.25.png

→ Puisque la version de production est «4.5.1», utilisez «community-4.5.1».

--Démarrez le conteneur

Pour le moment, commencez comme décrit dans Description

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

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

Accédez à http: //0.0.0.0: 8091 / avec un navigateur et confirmez que la console Couchbase est affichée. 0_0_0_0_8091_ui_index_html__.jpg Il est possible de définir manuellement le compte et le compartiment en appuyant sur Configuration, mais comme le but est le codage, nous l'ignorerons ici.

Vérifiez le fonctionnement pour le moment. ..

Codé

Créer Dockerfile, docker-compose.yaml

Les paramètres suivants sont nécessaires pour configurer l'environnement local. --Créer un cluster

Dockerfile (également docker-compose.yaml) est décrit afin de mettre les paramètres ci-dessus dans le code.

#Structure du répertoire
local-env
├ docker-compose.yaml
└ mbe-couchbase-container
  ├ byfield      
  │ └ all.ddoc   #afficher le fichier de définition
  ├ Dockerfile   #Fichier Docker Couchbase
  └ configure.sh #Script bash pour configurer 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

--Définissez les identifiants Couchbase avec COUCHBASE_ADMINISTRATOR_USERNAME, COUCHBASE_ADMINISTRATOR_PASSWORD --Dans build:. / Mbe-couchbase-container, spécifiez ↓ Dockerfile

#Créer Dockerfile
FROM couchbase:community-4.5.1

#Copiez le shell d'initialisation de Couchbase dans le conteneur
COPY ./configure.sh /opt/couchbase
COPY ./byfield/ /opt/couchbase

#Shell d'exécution de la configuration de Couchbase
CMD [ "/opt/couchbase/configure.sh" ]
#Coquille de configuration Couchbase
set -m

#Démarrage du serveur
/entrypoint.sh couchbase-server &

#Définissez approximativement le temps d'attente avant que le serveur API démarre TODO:Je souhaite détecter le démarrage du serveur et poursuivre le traitement.
sleep 30

#Allocation de mémoire de cluster
curl -v -X POST http://127.0.0.1:8091/pools/default -d memoryQuota=4096 -d indexMemoryQuota=4096

#Paramètres de service
curl -v http://127.0.0.1:8091/node/controller/setupServices -d services=kv%2cn1ql%2Cindex

#Paramètres des informations d'identification du serveur Couchbase
curl -v http://127.0.0.1:8091/settings/web -d port=8091 -d username=$COUCHBASE_ADMINISTRATOR_USERNAME -d password=$COUCHBASE_ADMINISTRATOR_PASSWORD

#Levage du bouchon du godet(Le nombre maximum de compartiments est de 10 par défaut,,Si vous souhaitez en créer plus, vous devez modifier les paramètres suivants)
curl -v -u $COUCHBASE_ADMINISTRATOR_USERNAME:$COUCHBASE_ADMINISTRATOR_PASSWORD -X POST http://127.0.0.1:8091/internalSettings -d maxBucketCount=20

#Création de godets
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
#Paramètres d'affichage
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

#Exécution au premier plan
fg 1

--Exécution de conteneur avec docker-compose


$ docker-compose up -d mbe-couchbase

Confirmez le démarrage du bucket.

Impressions

Couchbase ne trouve pas beaucoup d'articles même si je google. La référence officielle était solide et ce n'était qu'une simple implémentation donc je n'ai eu aucun problème. .. Couchbase n'est-il pas populaire? Il semble que la version cloud soit sortie il y a quelque temps, mais je ne pense pas qu'elle sera utilisée lors du déménagement vers le cloud.

référence

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

Recommended Posts

Créer un environnement local Couchbase avec Docker
Créer un environnement Docker avec WSL
Construire DynamoDB local avec Docker
Créer un environnement Node.js avec Docker
Créez un environnement Docker + Laravel avec Laradock
Créer un environnement de développement PureScript avec Docker
Créer un environnement de développement Wordpress avec Docker
[Docker] Construisez l'environnement d'exécution de Jupyter Lab avec Docker
Créer un environnement avec Docker sur AWS
Créer un environnement de vérification des opérations TensorFlow avec Docker
Comment créer un environnement Rails 6 avec Docker
Créer un environnement Laravel / Docker avec VSCode devcontainer
Créez rapidement un environnement de développement WordPress avec Docker
Créer un environnement mecab (dictionnaire NEologd) avec Docker (ubuntu)
[Rails] Comment créer un environnement avec Docker
Procédure de construction et de développement de l'environnement local Wordpress avec Docker
Créer un environnement de débogage sur un conteneur - Créer un environnement de développement local pour les didacticiels Rails avec Docker -
Créez un environnement de développement local pour les didacticiels Rails avec Docker (Rails 6 + PostgreSQL + Webpack)
[Docker] Construction de l'environnement Rails 5.2 avec docker
Comment créer un environnement Docker avec Gradle pour IntelliJ
Créez un environnement Ruby2.7.x + Rails6.0.x + MySQL8.0.x avec Docker
[Note] Créez un environnement Python3 avec Docker dans EC2
Environnement Build Rails (API) x MySQL x Nuxt.js avec Docker
Créez un environnement Vue3 avec Docker!
Créer un environnement Node.js avec Docker Compose
Créer un environnement Tomcat 8.5 avec Pleiades 4.8
Construction d'environnement avec Docker pour les débutants
Comment créer un environnement [TypeScript + Vue + Express + MySQL] avec Docker ~ Express ~
Créer un environnement de vérification SolrCloud avec Docker
Créer un environnement de développement Jooby avec Eclipse
[Construction de l'environnement avec Docker] Rails 6 et MySQL 8
Créer un environnement de développement Unity sur docker
Créer un environnement de développement Go avec WSL2 + Docker Desktop + VSCode (Remote --Containers)
J'ai essayé de créer un environnement de serveur UML Plant avec Docker
Comment créer un environnement [TypeScript + Vue + Express + MySQL] avec Docker ~ MySQL ~
Comment créer un environnement Rails + Vue + MySQL avec Docker [dernière version 2020/09]
Créer un environnement de développement pour Django + MySQL + nginx avec Docker Compose
Comment créer un environnement [TypeScript + Vue + Express + MySQL] avec Docker ~ Sequelize ~
Construction de l'environnement GPU avec Docker [version d'octobre 2020]
Construction d'environnement de rails avec Docker (apocalypse personnelle)
Construction de Rails 6 et environnement PostgreSQL avec Docker
Construction de l'environnement de développement Laravel avec Docker (Mac)