以部署示例服务(sevnce-demo)为例。
配置服务器
地址、账号、密码根据实际情况填写
配置镜像仓库
地址、账号、密码根据实际情况填写
编写Dockerfile
在sevnce-demo根目录下右键,选择创建Dockerfile。
dockerfile
# 基础镜像
FROM sevnce-registry.cn-chengdu.cr.aliyuncs.com/sevnce/jdk:17.0.5
# 运行的命令
RUN rm -rf /var/lib/apt/lists/* \
&& localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
# 设置语言编码
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
# 设置默认时区
ENV TZ=Asia/Shanghai
# 将工作目录设置为 /myapps
WORKDIR /usr/local/myapps
# 添加
ADD target/sevnce- demo -*.jar sevnce- demo .jar
# 指定运行环境
SHELL ["/bin/bash", "-c"]
# 运行的命令
RUN touch appstart.sh \
&& chmod +x appstart.sh \
&& mkdir /logs\
&& echo 'nohup java -Djava.security.egd=file:/dev/./urandom \
-Dspring.config.location=/usr/local/config/ \
-jar /usr/local/myapps/sevnce- demo .jar > /logs/startLog.file 2>&1 &' > appstart.sh
# 启动时运行的命令
ENTRYPOINT /usr/local/myapps/appstart.sh && tail -F /logs/startLog.file
配置运行参数
- 配置预执行Maven命令
clean install -U -DskipTests
点击ok,再次添加:
clean package -U -DskipTests
- 配置镜像名称
sevnce-registry.cn-chengdu.cr.aliyuncs.com/sevnce/sevnce-demo:1.0.0
- 配置容器名称
sevnce-demo
- 配置运行参数
- 配置端口映射
- 配置运行命令
-d --restart=on-failure
- 配置目录挂载
以上根据实际情况填写
运行Dockerfile
- 运行Dockerfile前,需要确保服务器连接成功。
- 配置启动参数。
切记更改版本号!
- 等待日志出现如下标识代表启动成功。
推送镜像
为了方便在其他服务器快速部署,可以推送镜像到镜像仓库。
等待进度完成即推送成功