松江专业做网站公司php网站开发设计模式
- 作者: 五速梦信息网
- 时间: 2026年04月20日 08:27
当前位置: 首页 > news >正文
松江专业做网站公司,php网站开发设计模式,山西网站建设企业,免费logo设计无水印文章目录 前言准备实操1、打开docker的远程访问2、编写dockerfile文件3、指定nexus环境4、配置jenkins5、使用jenkins构建 总结 前言 Docker部署项目是指使用Docker容器化技术将应用程序及其依赖项打包成一个独立的、可移植的运行环境#xff0c;并在各种操作系统和平台上进行… 文章目录 前言准备实操1、打开docker的远程访问2、编写dockerfile文件3、指定nexus环境4、配置jenkins5、使用jenkins构建 总结 前言 Docker部署项目是指使用Docker容器化技术将应用程序及其依赖项打包成一个独立的、可移植的运行环境并在各种操作系统和平台上进行部署和运行。 使用Docker的主要原因是解决了应用程序在不同环境中部署和运行的问题。传统上应用程序在部署时需要考虑操作系统、软件版本、依赖项等因素不同环境之间存在差异导致部署和运维变得复杂。 Docker可以将应用程序及其所有依赖项打包成一个独立的容器该容器包含了应用程序运行所需的所有组件如操作系统、库、运行时环境等。这样无论在哪个环境中部署只需要安装Docker并运行容器就可以保证应用程序在各个环境中的一致性和可移植性。 准备 maven项目javanexus镜像仓库gitLab代码仓库jenkins构建工具安装了docker的服务器 实操 1、打开docker的远程访问 Docker 安装成功之后首先需要修改 Docker 配置来开启允许远程访问 Docker 的功能。 文件位置/lib/systemd/system/docker.service 修改内容: 加入如下内容 DOCKER_OPTS-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock服务器开放2375端口 firewall-cmd –zonepublic –add-port2375/tcp –permanent systemctl restart firewalld重启docker systemctl daemon-reload systemctl restart docker2、编写dockerfile文件 dockerfile文件用来生成docker镜像镜像就像安装包可以运行为一个个的容器。 将dockerfile文件放到resource文件夹下。 FROM openjdk:11
将jar包添加到容器中并命名为 demo.jar
COPY merit-excitation-.jar /home/admin/merit-backend/merit-excitation-.jar #COPY agent /home/admin/agent
设置环境变量
ENV SPRING_NACOS_SERVERADDRESSnacos.tfjy.tech:8848 ENV SPRING_NACOS_NAMESPACEmerit-test
设置时区
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime echo Asia/Shanghai /etc/timezone
启动jar包命令
#CMD java -javaagent:/home/admin/agent/skywalking-agent.jar -DSW_AGENT_NAMEmerit-excitation -DSW_AGENT_COLLECTOR_BACKEND_SERVICESskywalking.tfjy.tech:11800 -Xms228m -Xmx228m -Dspring.cloud.nacos.config.server-addr\({SPRING_NACOS_SERVERADDRESS} -Dspring.cloud.nacos.config.namespace\){SPRING_NACOS_NAMESPACE} -Dspring.cloud.nacos.config.usernamemerit -Dspring.cloud.nacos.config.passwordmerit -Dspring.cloud.nacos.discovery.server-addr\({SPRING_NACOS_SERVERADDRESS} -Dspring.cloud.nacos.discovery.namespace\){SPRING_NACOS_NAMESPACE} -Dspring.cloud.nacos.discovery.usernamemerit -Dspring.cloud.nacos.discovery.passwordmerit -jar /home/admin/merit-backend/merit-excitation-.jar CMD java -Xms228m -Xmx228m -Dspring.cloud.nacos.config.server-addr\({SPRING_NACOS_SERVERADDRESS} -Dspring.cloud.nacos.config.namespace\){SPRING_NACOS_NAMESPACE} -Dspring.cloud.nacos.config.usernamemerit -Dspring.cloud.nacos.config.passwordmerit -Dspring.cloud.nacos.discovery.server-addr\({SPRING_NACOS_SERVERADDRESS} -Dspring.cloud.nacos.discovery.namespace\){SPRING_NACOS_NAMESPACE} -Dspring.cloud.nacos.discovery.usernamemerit -Dspring.cloud.nacos.discovery.passwordmerit -jar /home/admin/merit-backend/merit-excitation-.jar
SpringBoot项目配置的端口号为9001需要将9001暴露出去
EXPOSE 9071 3、指定nexus环境 父pom profilesprofile!–不同环境Profile的唯一id–iddev/idproperties!–profiles.active是自定义的字段名字随便起自定义字段可以有多个–profiles.activedev/profiles.active/properties/profileprofileidprod/idpropertiesprofiles.activeprod/profiles.activedocker-urlhttp://192.168.0.100:2375/docker-url/properties/profileprofileidtest/idpropertiesprofiles.activetest/profiles.activedocker-urlhttp://192.168.0.200:2375/docker-url/propertiesactivationactiveByDefaulttrue/activeByDefault/activation/profile/profiles子pom parentartifactIdmerit-backend/artifactIdgroupIdcom.xxx/groupIdversion1.0.15/version/parentmodelVersion4.0.0/modelVersionartifactIdmerit-template/artifactIdpropertiesmaven.compiler.source11/maven.compiler.sourcemaven.compiler.target11/maven.compiler.targetregistry-url192.168.0.xxx:8083/registry-urlskipTeststrue/skipTests!–编译打包跳过测试类–/propertiesbuildfinalName\({project.artifactId}-\){project.parent.version}/finalNamepluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/pluginplugingroupIdcom.spotify/groupIdartifactIddocker-maven-plugin/artifactIdversion1.2.2/versionconfigurationserverIddocker-local/serverIddockerHost\({docker-url}/dockerHostimageName\){registry-url}/\({project.artifactId}-\){profiles.active}:\({project.parent.version}/imageName!--nexus3 hosted 仓库地址--registryUrl\){registry-url}/registryUrl!– 在生成图像后将其推入的标志。默认为false –pushImagetrue/pushImageimageTags!– 指定镜像标签,可以排至多个标签 –imageTag\({project.version}/imageTag/imageTags!--是否强制覆盖已有镜像--forceTagstrue/forceTags!--方式一1、指定Dockerfile文件所在目录通过文件执行打包上传nexus私服--dockerDirectorysrc/main/resources/dockerDirectory!-- 指定docker镜像打包参数即dockerfile中使用的参数通过\){参数名}取值 –buildArgsJAR_FILE\({project.build.finalName}.jar/JAR_FILE/buildArgsresourcesresourcetargetPath//targetPath!--指定需要复制的根目录\){project.build.directory}表示target目录–directory\({project.build.directory}/directory!--用于指定需要复制的文件\){project.build.finalName}.jar表示打包后的jar包文件–include${project.build.finalName}.jar/include/resource/resources/configuration/plugin/plugins/build4、配置jenkins 新建一个maven项目的任务 旧版本管理 设置参数 设置git指定代码分支 打包镜像的命令
#!/bin/bashecho admin | sudo -S docker stop merit-excitation
删除旧的容器
echo admin | sudo -S docker rm -f merit-excitation
删除旧版镜像
echo admin | sudo -S docker rmi 192.168.0.xxx:8083/merit-excitation-prod:\({old_version} #删除所有悬空镜像 echo admin | sudo -S docker rmi \)(echo admin | sudo -S docker images -f danglingtrue -q)
启动镜像
echo admin | sudo -S docker run –nethost –restartalways -d –name merit-excitation -p 9071:9071 -e SPRING_NACOS_NAMESPACEmerit-prod -v /home/admin/logs:/logs 192.168.0.xxx:8083/merit-excitation-prod:${new_version}exit5、使用jenkins构建 构建时要删除旧版镜像根据版本号删除镜像防止占用服务器空间。 总结 配置好以后把镜像推到服务器上运行就很简单了。
- 上一篇: 松江营销型网站建设公司做网站买什么服务器
- 下一篇: 松江醉白池网站建设wordpress小说网站模板
相关文章
-
松江营销型网站建设公司做网站买什么服务器
松江营销型网站建设公司做网站买什么服务器
- 技术栈
- 2026年04月20日
-
松江新桥网站建设建设网站前需要的市场分析
松江新桥网站建设建设网站前需要的市场分析
- 技术栈
- 2026年04月20日
-
松江网站建设wordpress图片优化加速
松江网站建设wordpress图片优化加速
- 技术栈
- 2026年04月20日
-
松江醉白池网站建设wordpress小说网站模板
松江醉白池网站建设wordpress小说网站模板
- 技术栈
- 2026年04月20日
-
松溪网站建设单一产品企业或多元化产品企业的网站建设与策划有什么不同?
松溪网站建设单一产品企业或多元化产品企业的网站建设与策划有什么不同?
- 技术栈
- 2026年04月20日
-
松原公司做网站网页app
松原公司做网站网页app
- 技术栈
- 2026年04月20日
