学习了一些开源产品,在潜移默化的发现,是时候该学习下 docker 了,很多产品都制作了 docker 镜像,想测试这些产品的时候,使用 docker 安装就会显得特别方便。
简单介绍
- opengauss 是一款高性能、高安全、高可靠的企业级开源关系型数据库。
opengauss 在开源后,云和恩墨第一时间制造了docker版本。
- docker 是基于 go 语言开发的,开源项目
m6米乐安卓版下载官网:
文档:
仓库:
安装 docker
需要注意 docker 支持的平台:
我的测试环境是 centos 7.6
# 1. uninstall old versions 卸载旧版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
# 2. 需要的安装包,默认是国外的地址,很慢,这里使用阿里云的
yum install -y yum-utils
# 3. 设置镜像的仓库
yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
# 4. 更新软件包的索引
yum makecache fast
# 5. 安装 dokcer docker-ce是指社区版
yum install -y docker-ce docker-ce-cli containerd.io
安装的时候遇到一个小插曲,安装了python3没有修改yum-config-manager文件
[root@mogdb ~]# yum-config-manager \
> --add-repo \
> https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
file "/usr/bin/yum-config-manager", line 135
except yum.errors.repoerror, e:
^
syntaxerror: invalid syntax
[root@mogdb ~]# which yum-config-manager
/usr/bin/yum-config-manager
[root@mogdb ~]# vi /usr/bin/yum-config-manager # 换成 python2
#!/usr/bin/python2 -tt
[root@mogdb ~]# yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
loaded plugins: fastestmirror
adding repo from: https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
grabbing file https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo
启动并测试 docker
# 启动dokcer
[root@mogdb ~]# systemctl start docker
[root@mogdb ~]# docker version
client: docker engine - community
version: 20.10.11
api version: 1.41
go version: go1.16.9
git commit: dea9396
built: thu nov 18 00:38:53 2021
os/arch: linux/amd64
context: default
experimental: true
server: docker engine - community
engine:
version: 20.10.11
api version: 1.41 (minimum version 1.12)
go version: go1.16.9
git commit: 847da18
built: thu nov 18 00:37:17 2021
os/arch: linux/amd64
experimental: false
containerd:
version: 1.4.12
gitcommit: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
runc:
version: 1.0.2
gitcommit: v1.0.2-0-g52b36a2
docker-init:
version: 0.19.0
gitcommit: de40ad0
# 测试 hello-world
[root@mogdb ~]# docker run hello-world
# 查看下载的 hello-world 镜像
[root@mogdb ~]# docker images
repository tag image id created size
hello-world latest feb5d9fea6a5 2 months ago 13.3kb
卸载 docker
# 1. 卸载
yum remove docker-ce docker-ce-cli containerd.io
# 2. 删除
rm -rf /var/lib/docker
rm -rf /var/lib/containerd
配置阿里云镜像加速
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'eof'
{
"registry-mirrors": ["https://xe6vk78x.mirror.aliyuncs.com"]
}
eof
systemctl daemon-reload
systemctl restart docker
docker为什么比 vm 快
- docker 有着比虚拟机更少的抽象层
- docker 利用的是宿主机的内核,vm需要虚拟机操作系统
docker的常用命令
基于opengauss 学习这些命令
基础命令
docker version # 显示 docker 的版本信息
docker info # 显示 docker 的系统信息,包括镜像和容器的数量
docker command --help # 帮助
镜像命令
- 搜索镜像,搜索 opengauss 的镜像
[root@mogdb ~]# docker search opengauss
name description stars official automated
enmotech/opengauss opengauss latest images created by enmotech 12
... ...
# 可选项
--filter=stars=3000 # 搜索出来的镜像就是stars(收藏数)大于3000的
- 下载镜像, 下载 opengauss 的镜像
# usage: docker pull [options] name[:tag|@digest]
[root@mogdb ~]# docker pull enmotech/opengauss
using default tag: latest # 如果不写tag, 默认就是latest
latest: pulling from enmotech/opengauss
284055322776: pull complete # 分成下载,docker images的核心,联合文件系统
a7ca82b898d7: pull complete
2f93c23d8eb5: pull complete
3842013b7685: pull complete
6bc7e92855e3: pull complete
39c9c4e5b487: pull complete
1f9d76df94b5: pull complete
44db1c59ef84: pull complete
63ab02376fd3: pull complete
cf751b0b3be9: pull complete
9dc428e2c8b4: pull complete
digest: sha256:d5a3e38fa2553a44e7fa1cd5cad0b4f0845a679858764067d7b0052a228578a0 # 签名
status: downloaded newer image for enmotech/opengauss:latest
docker.io/enmotech/opengauss:latest # 真实地址
# 指定版本下载
[root@mogdb ~]# docker pull enmotech/opengauss:2.0.1
- 查看镜像
[root@mogdb ~]# docker images
repository tag image id created size
enmotech/opengauss latest b4dd24d09223 2 months ago 383mb
enmotech/opengauss 2.0.1 c3860afd8014 3 months ago 404mb
# 可选项
-a, --all show all images (default hides intermediate images)
-q, --quiet only show image ids
- 删除镜像
[root@mogdb ~]# docker rmi -f c3860afd8014
untagged: enmotech/opengauss:2.0.1
untagged: enmotech/opengauss@sha256:d156596b2900f7eda102aadfd951daad97412b610b96d3dd97d2cdd9d5b70024
deleted: sha256:c3860afd80148a6cfbb50269ef47f87257f2ed3fbf143f52b861303b98834833
deleted: sha256:193b45dffb62df01fa6c74bef9cf21774fdd550c5995f02bef28f30070db6859
deleted: sha256:32ba36efbf27ac2f485d1915fea35ec2a17c9d1b19d373d1edf49fd0f4b6a8de
deleted: sha256:ca0fd6097e9cf0aae5a1d5047f9b6bda30305a13396313b5cd021530be69bc9d
deleted: sha256:5d7f04d4882448ed954afc8d797069f3aede8ccc65a650086b9436f75fa11700
deleted: sha256:40a09fca023bf0d0353606c2684ba47d73979ffc6cae2dd4a4953d5796c8cb0d
deleted: sha256:8828e1e7978fba035a5305d8684b94ed322842ed095eb46bffcdef17ad2e091a
deleted: sha256:e7c2553c8389d79197d6c3ba7c731292cd772588d252683cf706cb660c6e46f0
deleted: sha256:d2292dd078208e84e70124123ffc4ebac5c304816a753db61da04f1e7d8a3663
deleted: sha256:8d78df12722212e140ae7ba4441c7f9a36365074779b6ca880f097c6e237f9e3
deleted: sha256:4f785c07c19d588e80313fc0ee644a19ac6e17a550a9e694c22babc355152367
deleted: sha256:21639b09744fc39b4e1fe31c79cdf54470afe4d7239a517c4060bd181f8e3039
# 通过id删除全部容器
[root@mogdb ~]# docker rmi -f $(docker images -aq)
容器命令
- 新建容器并启动
# usage: docker run [options] image [command] [arg...]
# 参数说明
--name # 容器名字,区分容器
--privileged=true # 使用该参数,容器内的 root 拥有真正的 root 权限。
-d # 后台方式运行
-e # 设置环境变量
-it # 使用交互方式运行,进入容器查看内容
-p(小) # 容器和宿主机的端口映射
-p ip:主机端口:容器端口
-p 主机端口:容器端口 (常用)
-p 容器端口
-p(大) # 随机指定端口
# 新建 opengauss 的容器并后台启动,配置密码 enmo@123,端口映射
# docker run --name opengauss --privileged=true -d -e gs_password=enmo@123 -p 5432:5432 enmotech/opengauss:latest
ad8892ff8b45fc3329ed76afd634de136ec7b67fb2ba02221a0ee8886ee932b8
- 列出所有运行的容器
# docker ps
-a # 列出当前正在运行的容器 历史运行过的容器
-n=? # 显示最近创建的容器
-q # 只显示容器的编号
[root@mogdb ~]# docker ps
container id image command created status ports names
ad8892ff8b45 enmotech/opengauss:latest "entrypoint.sh gauss…" 5 minutes ago up 5 minutes 0.0.0.0:5432->5432/tcp, :::5432->5432/tcp opengauss
- 启停容器
docker start 容器id
docker restart 容器id
docker stop 容器id
docker kill 容器id
- 进入当前正在运行的容器
docker exec -it 容器id /bin/bash # 进入容器后开启一个新的终端,可以在里面操作(常用)
docker attach 容器id # 进入容器正在执行的终端,不会启动新的进程
# 进入 opengauss 的容器内,在数据库中创建普通用户,测试外部连接
[root@mogdb ~]# docker exec -it ad8892ff8b45 /bin/bash
root@ad8892ff8b45:/# su - omm
omm@ad8892ff8b45:~$ gsql
gsql ((opengauss 2.1.0 build 590b0f8e) compiled at 2021-09-30 14:29:04 commit 0 last mr )
non-ssl connection (ssl connection is recommended when requiring high-security)
type "help" for help.
omm=# create user tpcc_usr with password "tpcc@1234";
notice: the encrypted password contains md5 ciphertext, which is not secure.
create role
omm=# alter user tpcc_usr sysadmin;
alter role
omm=# grant all on schema public to tpcc_usr;
grant
- 退出容器
exit # 退出并停止容器,后台运行的容器不会停止
ctrl p q # 容器不停止的退出
- 删除容器
docker rm 容器id # 删除指定的容器,不能删除正在运行的容器,如果强制删除 rm -f
docker rm -f $(docker ps -aq) # 删除所有容器
docker ps -aq|xargs docker rm # 删除所有容器
其他命令
- 查看日志
[root@mogdb ~]# docker logs -f -t --tail 10 ad8892ff8b45
2021-12-04t12:24:31.809995352z 2021-12-04 12:24:31.809 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [backend] log: the configure file /usr/local/opengauss/etc/gscgroup_omm.cfg doesn't exist or the size of configure file has changed. please create it by root user!
2021-12-04t12:24:31.810007421z 2021-12-04 12:24:31.809 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [backend] log: failed to parse cgroup config file.
2021-12-04t12:24:31.831906329z 2021-12-04 12:24:31.831 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [executor] warning: failed to obtain environment value $gausslog!
2021-12-04t12:24:31.831931488z 2021-12-04 12:24:31.831 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [executor] detail: n/a
2021-12-04t12:24:31.831934584z 2021-12-04 12:24:31.831 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [executor] cause: incorrect environment value.
2021-12-04t12:24:31.831936999z 2021-12-04 12:24:31.831 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [executor] action: please refer to backend log for more details.
2021-12-04t12:24:31.833046968z 2021-12-04 12:24:31.832 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [executor] warning: failed to obtain environment value $gausslog!
2021-12-04t12:24:31.833057677z 2021-12-04 12:24:31.832 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [executor] detail: n/a
2021-12-04t12:24:31.833060758z 2021-12-04 12:24:31.832 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [executor] cause: incorrect environment value.
2021-12-04t12:24:31.833063164z 2021-12-04 12:24:31.832 [unknown] [unknown] localhost 140460925998016 0[0:0#0] 0 [executor] action: please refer to backend log for more details.
- 查看容器内的进程信息
[root@mogdb ~]# docker top ad8892ff8b45
uid pid ppid c stime tty time cmd
70 26782 26762 2 20:24 ? 00:00:21 gaussdb
- 查询所有容器的资源使用信息
[root@mogdb ~]# docker stats
container id name cpu % mem usage / limit mem % net i/o block i/o pids
ad8892ff8b45 opengauss 2.65% 374.9mib / 7.62gib 4.80% 10.2kb / 58.2kb 6.77mb / 38.1mb 34
- 查看容器的元数据
[root@mogdb ~]# docker inspect ad8892ff8b45
- 从容器内复制文件到宿主机上
docker cp 容器id:pwd/file /home
docker镜像加载原理
容器的快照 commit
docker commit # 保存容器成为一个新的副本
docker commit -m="提交的描述信息" -a="作者” 容器id 目标镜像名:[tag]
测试 commit,前面为了测试外部连接数据库,在数据库中创建了一个普通用户 tpcc_usr ,下面保存这个容器成为一个新的副本
[root@mogdb ~]# docker commit -a="create database user tpcc" ad8892ff8b45 opengauss:1.0
sha256:1e760f8f2f3ddf707cb661bdd8549728bdb0ecd83d1166c6f9f350880464c654
[root@mogdb ~]# docker images
repository tag image id created size
opengauss 1.0 1e760f8f2f3d 15 seconds ago 1.21gb #<<<<<<<
enmotech/opengauss latest b4dd24d09223 2 months ago 383mb
使用新创建的副本来新建一个容器,查看用户是否存在
# 容器名opengauss2,端口映射为5433,使用镜像id是1e760f8f2f3d
[root@mogdb ~]# docker run --name opengauss2 --privileged=true -d -e gs_password=enmo@123 -p 5433:5432 1e760f8f2f3d
0a1c49aaa9114f19e33fef20753be092f923ffe558aa1d4251c55d3948dff486
[root@mogdb ~]# docker ps
container id image command created status ports names
0a1c49aaa911 1e760f8f2f3d "entrypoint.sh gauss…" 8 seconds ago up 8 seconds 0.0.0.0:5433->5432/tcp, :::5433->5432/tcp opengauss2 #<<<<<<<
ad8892ff8b45 enmotech/opengauss:latest "entrypoint.sh gauss…" 46 minutes ago up 37 minutes 0.0.0.0:5432->5432/tcp, :::5432->5432/tcp opengauss
[root@mogdb ~]# docker exec -it 0a1c49aaa911 /bin/bash
root@0a1c49aaa911:/# su - omm
omm@0a1c49aaa911:~$ gsql
gsql ((opengauss 2.1.0 build 590b0f8e) compiled at 2021-09-30 14:29:04 commit 0 last mr )
non-ssl connection (ssl connection is recommended when requiring high-security)
type "help" for help.
omm=# \du
list of roles
role name | attributes | member of
----------- ------------------------------------------------------------------------------------------------------------------ -----------
gaussdb | sysadmin | {}
omm | sysadmin, create role, create db, replication, administer audit, monitoradmin, operatoradmin, policyadmin, useft | {}
tpcc_usr | sysadmin | {}
omm=#
tpcc_usr 用户存在,使用外部工具测试连接
容器数据卷,持久化数据
查看 opengauss 的数据文件路径
omm@0a1c49aaa911:~$ gsql
gsql ((opengauss 2.1.0 build 590b0f8e) compiled at 2021-09-30 14:29:04 commit 0 last mr )
non-ssl connection (ssl connection is recommended when requiring high-security)
type "help" for help.
omm=# show data_directory;
data_directory
-------------------------
/var/lib/opengauss/data
(1 row)
指定路径挂载
# 指定路径挂载,ro只读,rw读写,设置 ro ,只能在宿主机上执行写操作,容器内部是只读的
docker run -it -v 主机目录:容器内目录:ro/rw
# 测试
# mkdir /root/data
docker run --name opengauss03 --privileged=true -d \
-e gs_password=enmo@123 -p 5434:5432 \
-v /root/data:/var/lib/opengauss/data \
1e760f8f2f3d
ee6e88d47dd90c7efbae1d85e33cedee3d649e33518a64f3ae99d6b8575bffb8
[root@mogdb ~]# docker inspect ee6e88d47dd9
"mounts": [
{
"type": "bind",
"source": "/root/data",
"destination": "/var/lib/opengauss/data",
"mode": "",
"rw": true,
"propagation": "rprivate"
}
],
[root@mogdb ~]# cd /root/data/
[root@mogdb data]# ll
total 4900
drwx------ 3 70 70 21 dec 4 11:51 asp_data
drwx------ 7 70 70 71 dec 4 11:51 base
-rw------- 1 70 70 72 dec 4 21:16 gaussdb.state
drwx------ 2 70 70 4096 dec 4 21:17 global
-rw------- 1 70 70 354 dec 4 11:50 gs_gazelle.conf
drwx------ 3 70 70 21 dec 4 11:51 gs_profile
-rw------- 1 70 70 4915200 dec 4 11:51 gswlm_userinfo.cfg
-rw------- 1 70 70 20238 dec 4 11:51 mot.conf
drwx------ 3 70 70 50 dec 4 11:51 pg_audit
drwx------ 2 70 70 26 dec 4 11:50 pg_clog
drwx------ 2 70 70 26 dec 4 11:50 pg_csnlog
-rw------- 1 70 70 0 dec 4 11:51 pg_ctl.lock
drwx------ 2 70 70 6 dec 4 11:50 pg_errorinfo
-rw------- 1 70 70 4553 dec 4 11:51 pg_hba.conf
-rw------- 1 70 70 1636 dec 4 11:50 pg_ident.conf
drwx------ 4 70 70 39 dec 4 11:50 pg_llog
drwx------ 2 70 70 6 dec 4 11:50 pg_location
drwx------ 2 70 70 126 dec 4 21:16 pg_log
drwx------ 4 70 70 36 dec 4 11:50 pg_multixact
drwx------ 2 70 70 26 dec 4 21:16 pg_notify
drwx------ 3 70 70 21 dec 4 11:51 pg_perf
drwx------ 2 70 70 6 dec 4 11:50 pg_replslot
drwx------ 2 70 70 6 dec 4 11:50 pg_serial
drwx------ 2 70 70 6 dec 4 11:50 pg_snapshots
drwx------ 2 70 70 25 dec 4 22:10 pg_stat_tmp
drwx------ 2 70 70 6 dec 4 11:50 pg_tblspc
drwx------ 2 70 70 6 dec 4 11:50 pg_twophase
-rw------- 1 70 70 4 dec 4 11:50 pg_version
drwx------ 3 70 70 4096 dec 4 11:51 pg_xlog
-rw------- 1 70 70 31669 dec 4 11:51 postgresql.conf
-rw------- 1 70 70 1024 dec 4 11:50 postgresql.conf.lock
-rw------- 1 70 70 33 dec 4 21:16 postmaster.opts
-rw------- 1 70 70 68 dec 4 21:16 postmaster.pid
drwx------ 3 70 70 21 dec 4 11:51 sql_monitor
drwx------ 5 70 70 67 dec 4 21:16 undo
具名和匿名挂载
# 匿名挂载 -v 容器内的路径
docker run --name opengauss04 --privileged=true -d \
-e gs_password=enmo@123 -p 5435:5432 \
-v /var/lib/opengauss/data \
1e760f8f2f3d
"mounts": [
{
"type": "volume",
"name": "e1f39b76c16ef76392b3a3a8312edc0f8c3e033c8c59d6ab60a6429c20236f62",
"source": "/var/lib/docker/volumes/e1f39b76c16ef76392b3a3a8312edc0f8c3e033c8c59d6ab60a6429c20236f62/_data",
"destination": "/var/lib/opengauss/data",
"driver": "local",
"mode": "",
"rw": true,
"propagation": ""
}
],
# 查看所有 volume 的情况
[root@mogdb ~]# docker volume ls
driver volume name
local 6cede63c42f882b1044b13c0aa20dd788eda6764940b9b8054db9e15087569a3
local 20df1e593053e108028cd2ada3084042b2f0d96827f236ea809f1b6663d90ef4
local a1601a649c6828db873110887ade959f86fdf18ccfd6e25c972a4edde661fd35
local a20478a2a42c64f4ac332f7067acdd5dd72e67ab7b3d8a85e609aaa4cc35d4bf
local df1f97eda08c32d45f11a0faff8522e564ed2442274e6e0609fed30c3947b06b
local e1f39b76c16ef76392b3a3a8312edc0f8c3e033c8c59d6ab60a6429c20236f62
# 具名挂载
docker run --name opengauss05 --privileged=true -d \
-e gs_password=enmo@123 -p 5436:5432 \
-v juming:/var/lib/opengauss/data \
1e760f8f2f3d
"mounts": [
{
"type": "volume",
"name": "juming",
"source": "/var/lib/docker/volumes/juming/_data",
"destination": "/var/lib/opengauss/data",
"driver": "local",
"mode": "z",
"rw": true,
"propagation": ""
}
],
# 查看挂载的具体位置
[root@mogdb ~]# docker volume inspect juming
[
{
"createdat": "2021-12-04t22:17:29 08:00",
"driver": "local",
"labels": null,
"mountpoint": "/var/lib/docker/volumes/juming/_data",
"name": "juming",
"options": null,
"scope": "local"
}
]
[root@mogdb ~]# docker volume ls
driver volume name
local 6cede63c42f882b1044b13c0aa20dd788eda6764940b9b8054db9e15087569a3
local 20df1e593053e108028cd2ada3084042b2f0d96827f236ea809f1b6663d90ef4
local a1601a649c6828db873110887ade959f86fdf18ccfd6e25c972a4edde661fd35
local a20478a2a42c64f4ac332f7067acdd5dd72e67ab7b3d8a85e609aaa4cc35d4bf
local df1f97eda08c32d45f11a0faff8522e564ed2442274e6e0609fed30c3947b06b
local e1f39b76c16ef76392b3a3a8312edc0f8c3e033c8c59d6ab60a6429c20236f62
local juming
dockerfile 制作 opengauss 镜像,源码中已经提供制作脚本,可以直接用
下载安装包:
下载源码包:
将安装包和源码包上传 docker 服务器
[root@mogdb ~]# ll opengauss*
-rw-r--r-- 1 root root 100623501 dec 4 22:35 opengauss-2.1.0-centos-64bit-all.tar.gz
-rw-r--r-- 1 root root 193144438 dec 4 22:40 opengauss-server-master.zip
# 解压源码包和安装包
[root@mogdb ~]# unzip opengauss-server-master.zip
[root@mogdb ~]# tar -zxvf opengauss-2.1.0-centos-64bit-all.tar.gz
# 准备目录和文件
[root@mogdb ~]# cd /root/opengauss-server-master/docker/dockerfiles
[root@mogdb dockerfiles]# mkdir 2.1.0
[root@mogdb dockerfiles]# cp 1.1.0/* 2.1.0/
[root@mogdb dockerfiles]# cp /root/opengauss-2.1.0-centos-64bit.tar.bz2 2.1.0/
# 修改 dockerfile_amd 文件
[root@mogdb dockerfiles]# sed -i "s/opengauss-1.1.0-centos-64bit.tar.bz2/opengauss-2.1.0-centos-64bit.tar.bz2/g" 2.1.0/dockerfile_amd
# 创建 opengauss 镜像
[root@mogdb dockerfiles]# sh builddockerimage.sh -v 2.1.0 -i
successfully built e336672f2857
successfully tagged opengauss:2.1.0
opengauss docker image 2.1.0 is ready to be extended:
--> opengauss:2.1.0
build completed in 42 seconds.
# 生成opengauss容器
[root@mogdb ~]# docker images
repository tag image id created size
opengauss 2.1.0 e336672f2857 46 seconds ago 616mb
opengauss 1.0 1e760f8f2f3d 3 hours ago 1.21gb
enmotech/opengauss latest b4dd24d09223 2 months ago 383mb
centos 7.6.1810 f1cb7c7d58b7 2 years ago 202mb
[root@mogdb ~]# docker run --name opengauss10 --privileged=true -d -e gs_password=enmo@123 -p 5866:5432 -v /var/lib/opengauss opengauss:2.1.0
30124a1b285a6fe92b4ea55bc340603148e5ba52db481aacf23354e242cfaa9c
[root@mogdb ~]# docker ps
container id image command created status ports names
30124a1b285a opengauss:2.1.0 "entrypoint.sh gauss…" 11 seconds ago up 10 seconds 0.0.0.0:5866->5432/tcp, :::5866->5432/tcp opengauss10
# 登录opengauss容器,创建用户
```sh
[root@mogdb ~]# docker exec -it 30124a1b285a /bin/bash
[root@72094285e528 /]# su - omm
[omm@72094285e528 ~]$ gsql
gsql ((opengauss 2.1.0 build 590b0f8e) compiled at 2021-09-30 14:29:04 commit 0 last mr )
non-ssl connection (ssl connection is recommended when requiring high-security)
type "help" for help.
omm=# create user tpcc_usr with password "tpcc@1234";
notice: the encrypted password contains md5 ciphertext, which is not secure.
create role
omm=# alter user tpcc_usr sysadmin;
alter role
omm=# grant all on schema public to tpcc_usr;
grant
先写到这吧,其实还有好多内容,后面有时间再写续篇
【米乐app官网下载的版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。