千家信息网

SpringBoot打包上传到docker并实现多实例部署的方法

发表于:2024-09-28 作者:千家信息网编辑
千家信息网最后更新 2024年09月28日,这篇文章主要讲解了SpringBoot打包上传到docker并实现多实例部署的方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。最近有一个朋友问我有没有玩过docker,
千家信息网最后更新 2024年09月28日SpringBoot打包上传到docker并实现多实例部署的方法

这篇文章主要讲解了SpringBoot打包上传到docker并实现多实例部署的方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

最近有一个朋友问我有没有玩过docker,回答起来底气不是很足 ^ - ^ (刚开始玩cloud的时候接触过,玩过一会,后面在实际开发中比较少用,所以基本上可以说是忘记了.),今天花了点时间整理之前的笔记以及整理走一个流程,记录一下吧,下次玩得时候C V 就好啦~

1. Docker的安装以及开启远程访问

1.1 安装

# 检查虚拟机内核版本,必须是3.10及以上uname -r# 安装dockeryum install docker# 输入y确认安装# 启动dockersystemctl start docker# 查看docker版本docker -v# 开机启动dockersystemctl enable docker# 停止dockersystemctl stop docker# 重启dockersystemctl restart docker

1.2 开启远程访问

修改文件 docker.service

vim /usr/lib/systemd/system/docker.service

修改ExecStart这行
#ExecStart=/usr/bin/dockerd -H fd://-containerd=/run/containerd/containerd.sock
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

# 重新加载配置文件systemctl daemon-reload # 重启服务systemctl restart docker.service # 查看端口是否开启 (如果是阿里云等服务器,需要 "安全" -> "防火墙" 开启端口2375)netstat -nlpt# 查看是否生效curl http://127.0.0.1:2375/info

2. IDEA 安装 docker 插件并且连接

2.1 安装插件

这个很简单,就一步一步截图了。。。(这个谁呀,怎么使用汉化的的 IDEA 呀~~)

2.2 连接docker

3. 打jar包并且编写Dockerfile打jar这个在这里不赘述。。。编写Dockerfile,注意一下划线的地方,然后注意修改一下

FROM java:8# 维护者信息MAINTAINER houyu# 这里的 /tmp 目录就会在运行时自动挂载为匿名卷,任何向 /tmp 中写入的信息都不会记录进容器存储层VOLUME /tmp# 复制上下文目录下的 /build/libs/fastboot-0.0.1.jar 到容器里COPY /build/libs/fastboot-0.0.1.jar fastboot-0.0.1.jar# bash方式执行,使fastboot-0.0.1.jar可访问# RUN新建立一层,在其上执行这些命令,执行结束后, commit 这一层的修改,构成新的镜像。RUN bash -c "touch /fastboot-0.0.1.jar"# 指定时区# ENV TZ='Asia/Shanghai'# 声明运行时容器提供服务端口,这只是一个声明,在运行时并不会因为这个声明应用就会开启这个端口的服务EXPOSE 10007# 指定容器启动程序及参数  ""ENTRYPOINT ["java","-jar","fastboot-0.0.1.jar", "--spring.profiles.active=prod"]

4. IDEA 配置构建镜像

4.1 配置运行脚本

4.2 运行脚本

5. 宿主机查看镜像并且确认部署成功

6. 部署多实例

具体的命令在后面:

操作脚本

# 查看镜像docker images# 查看安装的容器docker ps -a# 克隆c1726e8f3819镜像 安装成为一个fb1.2的容器# -d:后台运行# -p: 将主机的端口映射到容器的一个端口 主机端口:容器内部的端口docker run --name fb1.2 -d -p 10008:10007 c1726e8f3819 # 查看安装的容器docker ps -a # 查看运行中的容器docker ps # 验证fb1.1curl 127.0.0.1:10007 # 验证fb1.2curl 127.0.0.1:10008

常用的docker命令(私人美酒)

1)、镜像操作(https://hub.docker.com/)

1、检索镜像的详细信息,如镜像的TAG。
docker search 镜像关键字 如:docker search redis
2、拉取镜像(:tag是可选的,tag表示标签,多为软件的版本,默认是latest)
docker pull registry.docker-cn.com/library/redis:5.0.3 加速拉取
docker pull 加速地址+镜像名:tag 如:docker pull redis:5.0.3
3、查看所有本地镜像
docker images
4、删除指定的本地镜像
docker rmi 镜像Id或名称 如:docker rmi Tomcat
5、重命名镜像
docker tag IMAGEID(镜像id) REPOSITORY:TAG(仓库:标签)

2)、容器操作(软件镜像----运行镜像----产生一个容器)

1、搜索镜像
docker search tomcat
2、拉取镜像(:tag是可选的,tag表示标签,多为软件的版本,默认是latest)
docker pull tomcat:latest
3、根据镜像启动容器(latest可以省略,其他标签一定要加上)
-d:后台运行
-p: 将主机的端口映射到容器的一个端口 主机端口:容器内部的端口
docker run --name 别名 -d 主机端口:容器内部的端口 REPOSITORY/IMAGE ID
如:docker run --name mytomcat -d 8080:8080 tomcat:latest
3.1 重启容器
docker restart 容器名称/ID
4、查看运行中的容器
docker ps
5、查看所有已安装的容器
docker ps -a
6、停止运行中的容器
docker stop 容器的id/名称
7、启动容器
docker start 容器的id/名称
8、删除一个容器
docker rm 容器的id/名称
9、查看容器的日志
docker logs container-name/container-id(容器名称或容器ID)
10、进入指定容器空间
docker exec -it 容器名称/ID /bin/bash
如:docker exec -it tensquare_es /bin/bash

7. 安全问题请不要在线上环境开启docker远程访问,否则可能会被当做肉机

看完上述内容,是不是对SpringBoot打包上传到docker并实现多实例部署的方法有进一步的了解,如果还想学习更多内容,欢迎关注行业资讯频道。

容器 镜像 端口 运行 名称 主机 标签 版本 服务 实例 信息 内容 命令 脚本 软件 配置 方法 安全 后台 插件 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 注册科技和网络技术公司区别 软件开发过程与项目管理心得 数据库技术分享社区 网络安全公安机关 花生壳访问内网服务器 数据库需要配置环境变量 服务器 FRU 不一样能用吗 惠普服务器计时芯片 软件开发销售资质证书 网络安全与公民隐私 宠物会员管理系统数据库 四年级网络安全手抄报怎么写 oracle数据库安装失败 社会经济数据库 打电话变声器软件开发 宝德服务器排名 网络安全与管理方面的论文 异收联盟互联网科技有限公司 济南阡陌互联网科技有限公司 服务器一关是不是数据登录不上 csol2服务器喇叭 能不能只用手机做网络安全 数据流图用于数据库设计的 北京软件开发公司哪些比较靠谱 长宁区参考软件开发制造价格 网络安全 中级职称 网游无法连接服务器 数据库表里面的第一行改成中文 access拆分合并数据库 异收联盟互联网科技有限公司
0