【Cockroach】docke-compose启动cockroach

本文介绍了如何通过Docker容器启动CockroachDB,并展示了如何访问其管理页面和使用命令行登录执行SQL操作。CockroachDB是一个分布式SQL数据库,其特性与PostgreSQL相似。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言
cockroach,蟑螂数据库。

1. 启动

  • 创建cockroachdb目录,进入该目录

  • 创建docker-compose.yml文件,内容如下:

version: '3'
services:
  pgweb:
    image: cockroachdb/cockroach:latest
    container_name: cockroach
    command: start-single-node --insecure
    ports:
      - "8080:8080"
      - "26257:26257"
    volumes:
      - ./cockroach-data:/cockroach/cockroach-data
    restart: always
  • 准备镜像(非必要)
[root@iot-svc-test92XR6W liuwei]# docker-compose pull
Pulling pgweb ... done

pgweb?,大概率又是一个套壳子的国产数据库……我们接下来继续安装

  • 启动服务
[root@dev-liubei cockroach]# docker-compose up -d
  • 查看结果
[root@dev-liubei cockroach]# docker-compose ps
  Name                 Command               State                        Ports
-----------------------------------------------------------------------------------------------------
cockroach   /cockroach/cockroach.sh st ...   Up      0.0.0.0:26257->26257/tcp, 0.0.0.0:8080->8080/tcp

2. 管理页面

访问8080端口如下:
在这里插入图片描述

3. 命令行登录

  • 进入容器后执行如下命令:
[root@dab055a12307 cockroach]# cockroach sql --insecure --host=127.0.0.1 --port=26257
#
# Welcome to the CockroachDB SQL shell.
# All statements must be terminated by a semicolon.
# To exit, type: \q.
#
# Server version: CockroachDB CCL v23.1.8 (x86_64-pc-linux-gnu, built 2023/08/04 18:11:44, go1.19.10) (same version as client)
# Cluster ID: 50832b46-07ac-4625-a8b1-1ee6b5b2a96b
#
# Enter \? for a brief introduction.
#
root@127.0.0.1:26257/defaultdb> show databases;
  database_name | owner | primary_region | secondary_region | regions | survival_goal
----------------+-------+----------------+------------------+---------+----------------
  defaultdb     | root  | NULL           | NULL             | {}      | NULL
  postgres      | root  | NULL           | NULL             | {}      | NULL
  system        | node  | NULL           | NULL             | {}      | NULL
(3 rows)

Time: 6ms total (execution 6ms / network 0ms)
  • 命令行sql
    既然postgres的名字都看见了,我们试试pg的sql,应该是都可以执行的:
root@127.0.0.1:26257/postgres> create database xishu;
CREATE DATABASE

Time: 10ms total (execution 9ms / network 0ms)

root@127.0.0.1:26257/postgres> \c xishu
using new connection URL: postgresql://root@127.0.0.1:26257/xishu?application_name=%24+cockroach+sql&connect_timeout=15&sslmode=disable
root@127.0.0.1:26257/xishu> CREATE TABLE users(
                         ->    ID INT PRIMARY KEY     NOT NULL,
                         ->    name           CHAR(50)    NOT NULL,
                         ->    mail        CHAR(50),
                         ->    phone        CHAR(50)
                         -> );
CREATE TABLE

Time: 12ms total (execution 11ms / network 0ms)

root@127.0.0.1:26257/xishu> \d
List of relations:
  Schema |    Name    | Type  | Owner | Table
---------+------------+-------+-------+--------
  public | users      | table | root  | NULL
  public | users_pkey | index | root  | users
(2 rows)

嗯,果然还是pg


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玄德公笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值