Dict.CN 在线词典, 英语学习, 在线翻译 ------------- MyGitee 朱秋贵内科诊所 My腾云code

容器编排技术 docker compose 部springboot项目(mysql) 20210821

############springboot 项目 实例
############mysql ######################
################################################

 

 

 

 


1、springboot 项目 docker-compose.yml###内容如下

version: "3.0" #定义compose 版本号
  services: ##服务,每个服务实际上就是一个独立容器运行
    mysql: ##mysql服务
      ##container_name: mayikt007_tomcat8080_1 ##容器名称
      command: --default-authentication-plugin=mysql_native_password ##解决外部无法访问
      image: mysql:5.7 #
      ports:
        - 3306:3306 #容器端口映射到宿主机端口
      environment:
        MYSQL_ROOT_PASSWORD: 'root'
        MYSQL_PASSWORD_EMPTY_PASSWORD: 'no'
        MYSQL_DATABASE: 'test'
        MYSQL_USER: 'mayikt'
        MYSQL_PASSWORD: 'mayikt'
      networks: ###定位服务的桥
        - mayikt_web


    mayikt_web: ##自己单独的springboot项目
      hostname: mayikt
      build: ./ #需要构建的Dokcerfile文件
      ports:
      - 38000:8080 #容器端口映射到宿主机端口
      depends_on: #web服务依赖mysql服务,需要mysql服务先启动
        - mysql
      networks: ###定位服务的桥
        - mayikt_web
  networks: ###定位服务的桥
    mayikt_web:

 

 

 

2、springboot 项目 先打包为镜像文件mayikt
  #######Dokcerfile###内容如下

  ##基础镜像使用java
  FROM java:8
  ##自己定制的镜像文件作者
  MAINTAINER www.mayikt.com

  ##VOLUME 用于指定临时文件且目录为/tmp
  ##其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
  VOLUME /tmp

  #将jar包 添加到容器中并更名为mayikt.jar
  ADD mayikt-springboot-0.0.1-SNAPSHOT.jar mayikt.jar

  #运行jar包
  RUN bash -c 'touch /mayikt.jar'

  ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/mayikt.jar"]

  ###暴露端口8080
  EXPOSE 8080

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3、springboot 项目
  docker-compose.yml,Dokcerfile,mayikt-springboot-0.0.1-SNAPSHOT.jar
  上传到 宿主机目录 /usr/mayikt007/
  ######
  #####jdbc:mysql://mysql:3306/test?useUnicode=true&characterEncoding=utf8
  #####mysql为mysql容器名称

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 先生成Dockerfile镜像文件

 

 

 

 

 

 

 

4、执行docker-compose up

###先安装mysql

 

 

 注:docker-compose up 提示如下错识

 

 

 解决方法如下

 

 

 https://blog.csdn.net/robin90814/article/details/118188731

 

生成 web、mysql容器如下

 

 

注:  生成mysql容器的test库的数据表为空,需要手工同步一下

 

 

 

 

 

 

 

5、浏览器访问

 

 

http://192.168.254.128:38000/mayikt/list

 

 

 

 

 

6、其他

  springboot 项目Dockerfile可以先生成镜像 ,再docker-compose up

 

 

 

 

 

 

 

 

 

 

 

 

参考  https://www.cnblogs.com/niun/articles/14626836.html

 

posted @ 2021-08-21 19:39  cn2024  阅读(264)  评论(0编辑  收藏  举报