- 部署spring boot之前先确保docker安装正确,可以用
docker version
来检测是否安装成功
在这里可以先运行一个,docker可视化界面
docker run -it --restart=always -d --name portainer-docker -p 9000:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
然后访问9000端口,如下图
一、使用idea插件部署
1. 安装idea docker插件
2. idea连接docker
因为默认2375 的端口是没打开的,所以需要我们配置一下
vim /usr/lib/systemd/system/docker.service
提示:i开始编辑, Esc退出编辑,wq保存编辑,shift+ZZ退出vim编辑器
将ExecStart 替换成:
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock \
然后重启docker
systemctl daemon-reload // 1,加载docker守护线程
systemctl restart docker // 2,重启docker
3. 将项目打包在target下,双击package
注意:打包一定是在maven下package打包
4. 新建 Dockerfile,在根目录下
FROM java
COPY target/01-primary-0.0.1-SNAPSHOT.jar /primary.jar
CMD java -jar /primary.jar
5. 配置Idea中docker
点击Edit Configuration
点击 + 添加dockerfile配置
6. buid生成镜像到对应的IP下
生成成功
查询已有镜像docker images
7. 在docker中运行
运行镜像启动容器
docker run -p 8080:8080 2b0 #(2b0为镜像id,id前三位就可)#8080为指定宿主机端口 ,访问用8080
运行成功,可在浏览器访问
二、使用命令行部署
前提项目是已经打包好的
如果是部署到远程仓库,首先将其ip地址添加到docker
命令行
docker build . -t XXX.XXX.xxx.xxx/big-devil/open-api:0.0.1
docker push XXX.XXX.xxx.xxx/big-devil/open-api:0.0.1
# XXX.XXX.xxx.xxx:镜像仓库的IP
# /big-devil: 镜像存放路径
# open-api:镜像名称
# 0.0.1:镜像tag
运行镜像启动容器
docker run -p 8080:8080 2b0 #(2b0为镜像id)8080为指定宿主机端口 ,访问用8080```
因为打开两个idea,图片截着截着还变了样子,不过不影响内容