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
删除容器后,本地换包的会失效,然后自动拉取仓库上部署的包部署

浙公网安备 33010602011771号