starrocks官网docker部署mysql无法连接

        最近想看看starrocks的一些功能使用情况,那么就是需要自己先把简单的单实例环境在自己电脑玩起来吧,官网也有docker直接安装单实例的步骤(Deploy StarRocks with Docker | StarRocks)。那不巧了,直接开干,本以为很顺利的事情。结果......

        我是mac电脑,直接安装的docker桌面版本,然后按照官网的docker 命令启动完毕。

docker run -p 9030:9030 -p 8030:8030 -p 8040:8040 -itd \
--name quickstart starrocks/allin1-ubuntu

      不出意外的话,你应该按照官网说的可以连接mysql了,结果我的并不行,死活也不行啊。进了容器里面执行mysql 连接命令也是不行。

        然后我进入fe的log目录去看了fe.out的日志,日志说的是我的jdk版本不支持,要是用jdk17或者更高版本!啥都没操作,怎么能版本不行呢。我看了一下start的shell脚本,里面走的是17版本,我容器里面也有17的目录。执行java -version 结果版本信息也不显示,好像是jdk环境也有问题。

        期间好像我也该懂了一下conf启动时候的jvm的内存大小,默认是9个G好像,我改了4G,重新启动镜像,结果还是不行。

        正好赶上周五,公司网由于特别垃圾。所以我选择今天来搞一下吧。之前在github上搜issue没搜到,没想到今天一搜果然也有小伙伴是同样的问题。https://github.com/StarRocks/starrocks/issues/29990https://github.com/StarRocks/starrocks/issues/29990        上面的讨论,自己去看就可以了。解决的办法就是加入了一个参数  --security-opt seccomp=unconfined 并不是内存不足,当然内存肯定也是要先满足的。重启之后就解决了,那么这个参数是干嘛的呢?我也不是很懂,于是我找gpt和通义问了一下。

        这个参数大体说的就是关闭 Linux 系统调用过滤器,放开所有 syscall 限制;JVM 和 StarRocks 在启动时需要一些被默认策略禁止的系统调用,所以加了这个参数才能运行;也就是本身有一些安全策略保护我们的服务器,通过这个参数把保护策略关闭了。所以我们能够正常启动了,所以如果是正式环境的话。我们肯定是要根据具体需要哪些系统调用,我们开哪些,这方面不是很熟悉所以还得了解一下。

        今天就这些,赶紧把starrocks跑起来玩玩吧,要不面试的时候总觉得自己没用过就不敢说。

     

### 使用Docker部署StarRocks单节点 为了使用Docker部署StarRocks单节点环境,可以遵循如下方法: #### 准备工作 确保本地已经安装并配置好Docker引擎[^2]。可以通过命令`docker version`来验证Docker是否正常运行。 #### 获取StarRocks镜像 首先需要拉取官方提供的StarRocks Docker镜像。通常情况下可以直接通过Docker Hub获取最新版本的StarRocks镜像: ```bash docker pull starrocks/starrocks-fe:latest docker pull starrocks/starrocks-be:latest ``` #### 启动FE(Frontend) 创建并启动前端服务容器,该容器负责处理SQL查询请求和其他管理功能: ```bash docker run -d --name=starrocks_fe \ -e STARROCKS FeRole=follower \ -p 8030:8030 \ -v /path/to/local/data:/opt/starrocks/fe/storage \ starrocks/starrocks-fe:latest ``` #### 启动BE(Backend) 接着启动后端存储节点,它用于实际的数据存储和服务计算任务: ```bash docker run -d --name=starrocks_be \ -e STARROCKS_BE_HEARTBEAT_SERVER_HOSTS=localhost:9050 \ -p 9050:9050 \ -v /path/to/local/data:/opt/starrocks/be/storage \ starrocks/starrocks-be:latest ``` 这里假设前后端在同一台机器上运行;如果是分布式集群,则需调整相应参数以匹配实际情况。 #### 验证部署成功 当上述两个组件都已成功启动之后,可通过访问前端的服务端口(默认为8030),利用MySQL客户端或其他支持JDBC连接的方式测试与StarRocks FE建立连接,并尝试执行简单的SQL语句来进行初步的功能检验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

勇哥的编程江湖

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

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

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

打赏作者

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

抵扣说明:

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

余额充值