Angular项目发布

先将文件拉取到centos服务器上
安装pip,然后使用pip安装docker-compose

1
pip install docker-compose

修改文件,配置docker加速,如果没有文件就创建一个

1
vi /etc/docker/daemon.json
1
2
3
4
5
6
7
{
    "registry-mirrors": [
        "https://docker.mirrors.ustc.edu.cn",
        "https://dockerhub.azk8s.cn",
        "https://registry.docker-cn.com"
    ]
}

第一个是科大镜像站,第二个是Azure 中国镜像,第三个是Docker 中国官方镜像
参考Docker Hub 镜像加速器

修改完后执行命令重启服务

1
2
systemctl daemon-reload
systemctl restart docker

进入dashboard-app目录,修改package.json,修改编译命令,不然node编译时会报超出内存:

1
vi package.json

1
"build:docker": "ng build -c=docker",

改成

1
"build:docker": "node --max-old-space-size=8192 ./node_modules/@angular/cli/bin/ng build -c=docker",

目的是将编译时的内存限制改为8G,不然默认是1.4G可能不够编译用

然后执行命令:

1
2
docker-compose -f .docker/docker-compose.serve.yml build
docker-compose -f .docker/docker-compose.serve.yml up

第一行命令是编译,第二行是运行
命令在dashboard-app/README.md中有

如果不能访问可能是防火墙原因,执行命令打开防火墙端口

1
2
3
4
5
6
7
firewall-cmd --zone=public --add-port=3030/tcp --permanent
firewall-cmd --zone=public --add-port=3030/udp --permanent
firewall-cmd --zone=public --add-port=3001/tcp --permanent
firewall-cmd --zone=public --add-port=3001/udp --permanent
firewall-cmd --zone=public --add-port=4200/tcp --permanent
firewall-cmd --zone=public --add-port=4200/udp --permanent
firewall-cmd --reload