Spi_Ldap_API服务部署手册
Docker部署手册
Dockerfile编写
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27#使用jdk1.8作为基础镜像
FROM openjdk:8-jdk-alpine
MAINTAINER Leslie [email protected]
#挂载/tmp目录存储宿主机的jar包与证书文件
VOLUME /tmp
#将jar包上传至/tmp目录下并改名为app.jar
ADD spi_ldap_api-1.0-SNAPSHOT.jar /tmp/app.jar
#将证书文件上传至/tmp目录下
ADD AD-CA.cer /tmp
#更改默认时区为中国,不改会导致Log文件记录时间出错
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
#使用Java自带的Keytool将证书上传至秘钥库
#$JAVA_HOME:系统环境变量 ->> /usr/lib/jvm/java-1.8-openjdk
RUN $JAVA_HOME/bin/keytool -noprompt -import -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit -keypass changeit -alias AD-CA -file /tmp/AD-CA.cer
#将AD域服务器IP指向AD证书分发的域名
#注:Dockerfile更改host会不生效,需要在运行创建容器时指向--add-host=SPIGUADCTEST01.spitest.com:192.168.1.46,若证书域名已配置DNS解析可不使用该命令启动
#RUN echo "192.168.1.244 SPIGUAWDC101.GZ-SPI.COM" >> /etc/hosts
#运行jar包命令,参数"-Djavax.net.ssl.trustStorePassword=changeit"的含义是证书导入的密码,若不添加该参数会导致无法连接到ad服务器
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Djavax.net.ssl.trustStorePassword=changeit","-jar","/tmp/app.jar"]构建镜像
先将Dockerfile、AD-CA.cer证书以及项目编译好的jar包放在同一目录下。
在Dockerfile文件的目录下执行docker build命令构建镜像,命令如下:
1 | #x代表当前版本号,构建镜像前需要看看当前服务器使用的版本是否以及生成镜像 |
构建成功会显示Successfully tagged spi_ldap_api:v1.x
- 启动命令
1
docker run -d --restart=always --name=spi-ldap-api -v /var/log/spi-ldap-api/:/logs -p 8001:8001 spi_ldap_api:vx.x.x
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 🤖!