使用docker部署springboot项目,完整步骤
使用docker部署springboot项目安装docker新建本地虚拟机安装docker-ce镜像加速暴露2375端口spring-boot项目添加docker插件打包上传镜像到阿里云在服务器上运行项目拉取镜像运行镜像网站地址安装docker新建本地虚拟机使用VMware创建centos7虚拟机安装docker-ce参考云栖社区教程安装必要的一些系统工具sudo yum inst...
使用docker部署springboot项目
安装docker
新建本地虚拟机
使用VMware创建centos7虚拟机
安装docker-ce
参考云栖社区教程
- 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
- 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 更新并安装 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
- 开启Docker服务
sudo service docker start
- docker开机自启动
systemctl enable docker
镜像加速
阿里云控制台——容器镜像服务——镜像加速器
将上图中红色方框中的内容拷贝到shell脚本中,运行脚本即可
暴露2375端口
修改docker配置文件
vim /usr/lib/systemd/system/docker.service
找到ExecStart
添加-H tcp://0.0.0.0:2375
,如下图
重启docker
systemctl daemon-reload
systemctl restart docker
spring-boot项目
添加docker插件
修改pom.xml文件,添加以下插件
<build>
<finalName>spring-boot-demo</finalName>
<plugins>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.12</version>
<configuration>
<!-- 镜像名称 -->
<imageName>springboot/spring-boot-demo</imageName>
<!-- 上一步创建的虚拟机ip -->
<dockerHost>192.168.234.201</dockerHost>
<dockerDirectory>${project.basedir}</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
</plugins>
</build>
在项目根目录下创建Dockerfile文件,内容如下
FROM anapsix/alpine-java:8_server-jre_unlimited
MAINTAINER xuelingkang@163.com
ADD spring-boot-demo.jar app.jar
EXPOSE 8080
CMD nohup java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom $JAVA_OPTS -jar app.jar > /var/log/spring-boot-demo.log
打包
在项目根目录下打开cmd窗口,或者直接在idea中打开Treminal窗口,运行以下命令
mvn clean package -Dmaven.test.skip=true docker:build
成功后可以在虚拟机上查看到刚刚创建的镜像
docker images
上传镜像到阿里云
- 登录阿里云镜像仓库服务控制台,创建镜像,步骤略。
- 点击创建好的镜像
按照操作指南将本地虚拟机中的镜像上传到阿里云
docker login --username=xuelingkang@163.com registry.cn-zhangjiakou.aliyuncs.com
docker tag 012a2fd89768 registry.cn-zhangjiakou.aliyuncs.com/xzixi/spring-boot-demo:4.0
docker push registry.cn-zhangjiakou.aliyuncs.com/xzixi/spring-boot-demo:4.0
在服务器上运行项目
拉取镜像
docker pull registry.cn-zhangjiakou.aliyuncs.com/xzixi/spring-boot-demo:4.0
拉取完成后使用docker images
命令查看镜像列表
为了方便使用,用docker tag
命令将镜像重名
docker tag 012a2fd89768 bootdemo:4.0
删除远程镜像
docker rmi registry.cn-zhangjiakou.aliyuncs.com/xzixi/spring-boot-demo:4.0
运行镜像
docker run -d --name bootdemo \
# 可以在这里设置jvm参数,spring环境变量等
-e JAVA_OPTS='-Dspring.profiles.active=prod' \
# 挂载日志目录
-v /var/log/spring-boot-demo:/var/log/spring-boot-demo \
# 同步时间
-v /etc/localtime:/etc/localtime \
-p 8080:8080 \
bootdemo:4.0
网站地址
更多推荐
所有评论(0)