连接工具 Xshell6
sudo bash :进入管理员模式
cd / :进入根目录 ls :查看目录结构
mkdir build<自定义文件名> : 创建项目构建目录
- 更新代码到服务器
首次clone项目到服务器:
H1-service
1). git clone –b latest(分支名) <项目git地址>
2). 输入git用户名
3).用户密码
RH3-service
1). git clone –b latest(分支名) <项目git地址>
2).输入git用户名
3).用户密码
更新代码: git pull 输入用户名密码
2.打包:
cd h1_services/ :进入项目在pom.xml 同级目录下执行
mvn clean ,
mvn package ,
mvn install
每个项目中出现target文件,内含运行jar包
cd rh3_services/ :进入项目在pom.xml 同级目录下执行
mvn package
3.构建rh3项目本地docker 镜像
进入到项目Dockerfile文件同级目录
docker build -t rh3-service<镜像名称> ./
docker images :查看镜像列表
Dockerfile:
FROM ***/java-jre<基础镜像地址>
ADD ./target/rh3-service.jar<项目jar包地址> /app/<容器存放jar目录>
CMD ["java", "-Xmx2000m", "-jar", "/app/rh3-service.jar"] <运行参数>
EXPOSE 11001<项目端口号>
4.启动服务
cd /opt/rh3-services: 进入启动管理文件
ls –a : 查看全部文件
vi .env :编辑新增环境变量
/opt/config:配置文件管理文件夹,新增的yml文件上传到这里
./start.sh dev :启动服务
5.查看启动状态
docker ps -a :查看全部容器状态
docker logs -f 容器名 --tail 200 :动态查看近200条日志查看启动状况
注:镜像或容器创建失败 可以执行以下命令删除
docker ps –a : 查看全部容器服务
docker stop 容器ID : 停止容器
docker rm 容器ID:删除容器
docker images : 查看全部镜像
docker rmi 镜像ID :删除镜像
创建UI部署docker镜像
Git clone web项目文件到服务器
1、 构建基础镜像
Dockerfile
FROM ***/node10
-angular-version
WORKDIR /opt
ARG parameter
ADD ./${parameter} /opt/our/
WORKDIR /opt/our
RUN apt-get update && npm install
#RUN npm cache clean –f
CMD ng serve --host 0.0.0.0 --port 4200 --prod
CMD node --max_old_space_size=2048 ./node_modules/@angular/cli/bin/ng serve --host 0.0.0.0 --port 4200 –prod
docker build --build-arg parameter=labelSystem<ui项目文件夹> -t 镜像名称 ./
eg:docker build --build-arg parameter=labelSystem -t $LABELUI_IMAGE ./label_ui
- 构建数据卷(UI代码)
Dockerfile
FROM debian:wheezy
ARG parameter
ADD ./${parameter}/src/ /opt/our/src/
docker build --build-arg parameter=labelSystem<ui项目文件夹> -t 数据卷镜像名称 ./
基础镜像只需要构建一次 数据卷每次代码更新需从新构建
- 启动文件管理
docker-compose.yml 文件编写
version: '2'<版本号目前仅支持2>
services:
ecg-data:<数据卷名称>
image: ***/angular-ecg-doctor-data
container_name: ecg-doctor-data
volumes:
- /opt/our/src/
ecg-node:<基础镜像名称>
env_file:
- .env
image: ***/angular-ecg-base
container_name: ecg-doctor-$MARK_NAME
volumes_from:
- ecg-data<依赖数据卷>
volumes:
- ./common.config.ts:/opt/our/src/app/@core/data/common.config.ts
ports:
- $ECG_NODE_PORT:4200<端口号>
restart: always
privileged: true
environment:
- TZ=Asia/Shanghai
docker-compose up –d :启动服务