docker容器部署

前端不能直接运行npm run build打包,要执行项目内写好的打包脚本,这个脚本是ci/teambuild.sh:

进入该目录运行这个脚本,就会在项目的src/build目录下生成一个orderui.tar.gz

开发环境是部署到ubuntu@10.54.159.148这个节点;测试环境是pict@10.54.158.181

以开发环境为例,

打开终端,连接机器 ssh ubuntu@10.54.159.148 ubuntu/UbuntU1!2@3#4$

获取管理权限 sudo su

先将tar.gz包上传到ubuntu@10.54.159.148这个节点

scp orderui.tar.gz ubuntu@10.54.159.148:/home/ubuntu

kubectl get pods -n director -o wide | grep uportal

获取 Kubernetes 集群中 director 命名空间下的所有 Pods 的详细信息 & 过滤并只显示包含 uportal 字符串的 Pod 行。

也就是获取uportal在k8s集群中的哪个节点

查询到uportal所在的 44、40 部署单元

这个40节点是局域网,要在148节点才能访问到40节点,不能直接透过自己的主机访问40节点,所以无法直接把tar包上传40节点

scp orderui.tar.gz ubuntu@172.16.101.40:/home/ubuntu

先连接其中一个,ssh ubuntu@172.16.101.40

docker ps | grep uportal

列出当前正在运行的与 uportal 相关的容器

docker cp ticketui.tar.gz 8a10fd6e5691:/webroot

将主机上的 ticketui.tar.gz 文件复制到 Docker 容器中

docker exec -it -u root 8a10fd6e5691 sh

在指定容器内部以 root 的用户身份进行操作

cd /webroot

使用ls确认上传成功后解压缩

tar -zxf orderui.tar.gz

将解压文件夹tickerui内的index.html文件移动到上一层级

cp ticketui/index.html ..

chmod 755 index.html

其他常用命令

vi director-menus.json

编辑相应文件,对于userportaliui框架可以进入容器修改代码文件的方式调试

:258
定位到代码258行

超过500行的代码粘贴操作可能引发卡顿,可以采取本地上传文件的方法

scp helloworld.js ubuntu@10.54.159.148:/home/ubuntu

mv 待移动文件 目标路径

tar -xf 待解压文件

tar -czf 目标文件 待压缩的文件/目录

rm -rf 待删除文件

tar -xzf ticketui.tar.gz tar 会自动检测文件的压缩方式并进行解压。-z 选项在这里是多余的,但明确指定 gzip 解压可以提高命令的可读性

exit退出

docker restart 8a10fd6e5691

重启该容器

docker rm -f 8a10fd6e5691

删除容器后,本地换包的会失效,然后自动拉取仓库上部署的包部署

posted @ 2025-04-24 15:49  双城孙宇  阅读(32)  评论(0)    收藏  举报