飞牛系统安装DataEase自定义Docker包

飞牛系统安装DataEase自定义Docker包

背景

有网友需要在飞牛系统上部署一套定制的DataEase,但是飞牛系统都是Docker方式安装,以前没接触过,听过飞牛系统,Docker也只是听说过。今天想尝试一下。大概理一下思路:

先将DataEase 打成Docker包,然后导出。再上传飞牛系统,再看怎么导入

构造DataEase Docker包

1.在Linux 系统中(比如我这里选麒麟V10)安装Docker

javascript 复制代码
 sudo yum install -y docker

2.准备打包文件

我创建目录/setup/jdk21

javascript 复制代码
mkdir /setup/jdk21

然后把jdk21 和dataease2.0 复制进去,变成

javascript 复制代码
[root@localhost ~]# cp -r /usr/local/jdk21 /setup/jdk21
[root@localhost ~]# cp -r /opt/dataease2.0 /setup/jdk21
[root@localhost ~]# ll /setup/jdk21
总用量 4
drwxr-xr-x  7 root root 133  7月 21 10:10 dataease2.0
-rw-r--r--  1 root root 413  7月 21 10:11 Dockerfile
drwxr-xr-x 10 root root 149  7月 15 21:00 jdk-21

在/setup/jdk21创建Dockerfile,内容如下:

javascript 复制代码
[root@localhost ~]# cd /setup/jdk21
[root@localhost jdk21]# vi Dockerfile
javascript 复制代码
FROM debian:11-slim

# 安装必要的基础库
RUN apt-get update && apt-get install -y libc6 zlib1g libstdc++6 && \
    rm -rf /var/lib/apt/lists/*

COPY jdk-21 /opt/jdk-21
COPY dataease2.0 /opt/dataease2.0
# 设置环境变量
ENV JAVA_HOME=/opt/jdk-21 \
    PATH=/opt/jdk-21/bin:$PATH

# 设置工作目录
WORKDIR /opt/dataease2.0

# 3. 运行 Java 程序
ENTRYPOINT ["java", "-jar", "CoreApplication.jar"]

【说明】:

COPY jdk-21 /opt/jdk-21 是将当前目录的下的jdk-21 复制到容器目录/opt/jdk-21

debian:11-slim 是oracle jdk21 依赖的库

3.执行打包

javascript 复制代码
docker build -t dataease .

【注意】如果打包时报连接超时之类,需要修改/etc/docker/daemon.json文件,内容如下:

javascript 复制代码
{
  "registry-mirrors": [
    "https://registry.cn-hangzhou.aliyuncs.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com",
    "https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com",
    "https://docker.m.daocloud.io",
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com",
    "https://your_preferred_mirror",
    "https://dockerhub.icu",
    "https://docker.registry.cyou",
    "https://docker-cf.registry.cyou",
    "https://dockercf.jsdelivr.fyi",
    "https://docker.jsdelivr.fyi",
    "https://dockertest.jsdelivr.fyi",
    "https://mirror.aliyuncs.com",
    "https://dockerproxy.com",
    "https://mirror.baidubce.com",
    "https://docker.m.daocloud.io",
    "https://docker.nju.edu.cn",
    "https://docker.mirrors.sjtug.sjtu.edu.cn",
    "https://docker.mirrors.ustc.edu.cn",
    "https://mirror.iscas.ac.cn",
    "https://docker.rainbond.cc"
  ],
  "max-concurrent-downloads": 10,
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}

主要是registry-mirrors 这段

4.验证打好的包

使用docker ps -a

第一行dataease就是打包结果

运行docker 包

命令:docker start 容器ID

查看容器运行日志

命令:docker log 容器ID

上传DataEase Docker包

1.把本地docker 容器导出

1.1查看镜像列表命令:docker images
1.2 执行导出命令:docker save -o tar文件名 仓库名称:TAG名称

执行完后,在当前目录下产生dataease.tar文件

2.使用飞牛的文件管理上传Docker包

把上面dataease.tar下载到本地windows,然后打开飞牛网站

双击打开文件管理

走到指定目录,点击上传按钮,选择上传文件,在弹出对话框选择刚才文件,上传即可。

安装1Panel组件

在飞牛系统界面,打开应用中心,找到1Panel图标,点击下图的安装,如下图:

点击下一步,设置安全入口、用户名、密码

这里安全入口设置为123456

创建容器

1.进入1Panel,双击桌面1Panel图标


【注意】如果打不开的网页,则检查是否开放了18090端口

2.导入镜像

2.1.查看文件位置

还记得前面有一步上传DataEase Docker包,走到那个tar文件,右键看详细信息

在弹出对话框,点击复制原始路径,把复制到写字板,后面使用

2.2 导入镜像

切回到1Panel界面

依次点击红框菜单,最后在路径输入框粘贴2.1复制出来的原始路径,点击右下角导入按钮

导入成功,会出现如下图:

3.创建容器

切换到容器页签

录入容器名称及镜像名称,点击确定。你还可以设置后面的cpu数量,内存数量,映射端口等

启动DataEase Docker

在dataease容器操作栏点击更多,弹出菜单点击启动

进入飞牛终端

有时,需要修改配置文件,必须进入终端

在1Panel 左边工具条,点击主机,再点击终端,如下图:

它默认连接127.0.0.1,所以连接失败

在主机页签增加主机

回到终端页签

鼠标移到+号,点击下面的admin@xxx.xxx.xxx.xxx

常见问题解决

如果构造容器,或启动容器报错:

1.Pulling Get "https://registry-1.docker.io/v2/": net/http: request canceled w

这是构建容器时,下载包报错,类似第一步构造DataEase Docker包,修改/etc/docker/daemon.json,内容如下:

javascript 复制代码
{
  "registry-mirrors": [
    "https://docker.1panel.live",
    "https://docker.m.daocloud.io/",
    "https://huecker.io/",
    "https://dockerhub.timeweb.cloud",
    "https://noohub.ru/",
    "https://dockerproxy.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://docker.nju.edu.cn",
    "https://xx4bwyg2.mirror.aliyuncs.com",
    "http://f1361db2.m.daocloud.io",
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://mirror.aliyuncs.com",
    "https://docker.mirrors.ustc.edu.cn"
  ]
}

修改配置文件

再次执行构造容器操作即可

2.The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.


SQL State : 08S01

Error Code : 0

Message : Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

这是数据库连接错误,需要修改数据库配置文件

进入终端:

先把dataease docker包的配置文件:/opt/dataease2.0/application-standalone.yml 复制出来

然后修改,再复制回去,再重启docker

看目前容器id

把容器配置文件复制出来

sudo docker cp 33fd192410df:/opt/dataease2.0/application-standalone.yml ./fixed-config.yml

修改配置文件

sudo vi fixed-config.yml

修改完后,覆盖回去

sudo docker cp ./fixed-config.yml 33fd192410df:/opt/dataease2.0/application-standalone.yml

重启docker

最后

这个过程耗费了三天时间。感觉还值得,以前感觉docker挺神秘的。如需沟通:lita2lz

相关推荐
飞询13 分钟前
部署 coze-loop
docker·coze
龙卷风040525 分钟前
使用本地IDEA连接服务器远程构建部署Docker服务
后端·docker
呉師傅36 分钟前
佳能iR-ADV C5560复印机如何扫描文件到电脑
运维·网络·windows·计算机外设·电脑
半梦半醒*1 小时前
Linux网络管理
linux·运维·网络·centos·运维开发
破刺不会编程1 小时前
linux线程概念和控制
linux·运维·服务器·开发语言·c++
Nightwish52 小时前
Linux随记(二十一)
linux·运维·服务器
终端行者3 小时前
k8s之Ingress服务接入控制器
云原生·容器·kubernetes
IT成长日记4 小时前
【自动化运维神器Ansible】Ansible常用模块之File模块详解
运维·自动化·ansible·file·常用模块
獭.獭.4 小时前
Linux -- 文件【上】
linux·运维·服务器·进程·pcb
不会敲代码的XW5 小时前
高可用集群KEEPALIVED的详细部署
运维·云原生