第一次用docker

下载docker并安装完成后,使用 docker pull 拉取镜像(这次拉取了mysql,jdk8) 可以通过docker -image查看,拉取镜像后,就可以创作镜像对应的容器,本项目拉取mysql镜像创建ycmysql(创建镜像使用-p指定端口映射,如ycmysql localhost3308端口与3306对应 宿主机的一个端口只能映射到容器内部的某一个端口上,容器内部的某个端口可以被宿主机的多个端口映射)存储我们需要的res数据.(进入容器 docker exec -it ycmysql /bin/bash)
进入容器后创建数据库(create database res default character set = ‘utf8’;
show databases;)
如果有需要的话可以对mysql进行加密和密码更改.
docker 中的容器如果要互相访问,需要用到bridge网桥,桥接起两个容器,以新建一个testmysql为例,桥接了testmysql和ycmysql之后,可以通过testmysql访问ycmysql中的数据,首先创建bridge网桥,docker network create -d bridge 网络id(ycnetwork) 网桥创建好后,连接容器和网桥(docker network connect ycnetwork ycmysql)此时查看网桥具体信息(docker network inspect ycnetwork)记录mysql的ip信息.
在idea中打开res项目,导入相关配置:Dockerfile(定制镜像) application-init.yml(其中调用了sql语句往数据库中添加内容,url桥接的端口号为绑定ycmysql的端口号3308) application-prod(本yml中的url的location需要替换成刚刚记录的ycmyql的ip信息)
在这里插入图片描述
调用写的findall方法,可以在命令窗口查询到ycmysql中已被写入需要的信息.
通过maven打包成springboot包.
在idea的services中add service选择Docker connection TCP的socket会自动匹配到docker的端口,连接成功后,在images里选择刚刚打包好的springboot_res,右键新建容器,在bind prots中HostPort为该项目(application.yml)中的端口号,Containerport中为(application-prod)中的端口号Hostip为localhost name命名为res
res容器建好后,将res容器再次桥接上网桥ycnetwork,就可以通过res访问ycmysql.
网桥搭建好后尝试访问页面(localhost:10086)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值