官方有指导文档,如果无法在线下载docker镜像,需要手工安装
https://docs.opengauss.org/zh/docs/7.0.0-RC1/docs/InstallationGuide/%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F%E5%AE%89%E8%A3%85.html
1、docker版本获取
arm版本
wget https://download-opengauss.osinfra.cn/archive_test/7.0.0-RC1/openGauss7.0.0-RC1.B023/openEuler20.03/arm/openGauss-Docker-7.0.0-RC1-aarch64.tar
x86版本
wget https://download-opengauss.osinfra.cn/archive_test/7.0.0-RC1/openGauss7.0.0-RC1.B023/openEuler20.03/x86/openGauss-Docker-7.0.0-RC1-x86_64.tar
2、docker容器加载
docker load -i openGauss-Docker-7.0.0-RC1-x86_64.tar
容器启动
docker run --name opengauss --privileged=true -d -e GS_PASSWORD=密码 -p 5432:5432 opengauss:7.0.0-rc1
报错修改:
关闭防火墙,虽然不知道因为啥
systemctl stop firewalld.service
docker exec -it 2c91c470d89b bash
查找安装目录
find / -name 'gsql'
gsql -d postgres -p 5432
docker安装成功后,默认支持外部连接,贼方便,省略很多配置。
3、常见问题
1、未成功启动
查看镜像日志,定位到密码必须包含大小写和特殊字符,这里不看官方文档容易出错
2、启动报错
iptables未成功加载
# 停止 Docker 服务
sudo systemctl stop docker
# 刷新 iptables 规则
sudo iptables -t nat -F
sudo iptables -t nat -X
# 重启 Docker 服务
sudo systemctl start docker
# 检查 Docker 状态
sudo systemctl status docker
3、Linux 系统的 IPv4 转发功能被禁用
Linux 系统的 IPv4 转发功能被禁用,导致 Docker 容器无法进行网络通信
修改
# 编辑 sysctl 配置文件
sudo nano /etc/sysctl.conf
# 找到或添加以下行
net.ipv4.ip_forward = 1
# 保存后应用配置
sudo sysctl -p