鏈接工具 Xshell6 java
sudo bash :進入管理員模式node
cd / :進入根目錄 ls :查看目錄結構git
mkdir build<自定義文件名> : 建立項目構建目錄web
- 更新代碼到服務器
首次clone項目到服務器:docker
H1-serviceshell
1). git clone –b latest(分支名) <項目git地址>npm
2). 輸入git用戶名bash
3).用戶密碼服務器
RH3-serviceapp
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項目文件到服務器
一、 構建基礎鏡像
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 :啓動服務