云服务器docker部署SpringBoot+mysql+Redis项目

云服务器docker部署SpringBoot+mysql+Redis项目,第1张

云服务器docker部署SpringBoot+mysql+Redis项目 docker安装Redis
#拉取redis的镜像
docker pull redis
#查看本地redis镜像
docker images
#运行redis
docker run --name dockerredis -p 6378:6379 -d redis redis-server --appendonly yes
  • docker run:运行容器
  • –name:容器名字
  • -p 6380:6379:把服务器的6380端口映射到docker的6379端口,通过服务器6380端口访问docker的redis
  • -d :表示以后台服务形式运行redis
  • redis redis-server --appendonly yes表示开启持久化缓存模式,可以缓存到硬盘

使用docker ps命令可以看到redis启动成功

docker安装mysql
#获取mysql5.7
docker pull mysql:5.7

#运行mysql
docker run --name dockermysql -e MYSQL_ROOT_PASSWORD=admin -d -p 3307:3306 mysql:5.7
  • MYSQL_ROOT_PASSWORD=admin表示docker的mysql密码为admin

mysql运行后,使用sqlyog远程连接数据库,执行sql文件,形成数据库

构建项目的docker镜像
  1. 修改mysql和redis的配置

    spring:
    	datasource:
            url: jdbc:mysql://emysql:3306/blog?serverTimezone=UTC
            username: root
            password: admin
        redis:
        	host: eredis
    

    mysql的url将主机改为emysql,并修改用户名和密码,redis的host修改为erdis,emysql和eredis为启动镜像时mysql和redis的命名。

  2. Maven打包SpringBoot项目成jar包

    生成BlogReconstrucr-1.0-SNAPSHOT.jar,并上传到云服务器。

  3. 编写DockerFile文件

    FROM java:8
    
    # 项目暴露的端口
    EXPOSE 80
    
    # VOLUME 指定了临时文件目录为/tmp。
    # 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
    VOLUME /tmp 
    # 将jar包添加到容器中并更名为app.jar
    ADD BlogReconstrucr-1.0-SNAPSHOT.jar app.jar
    
    # 执行创建app.jar
    RUN bash -c 'touch /app.jar'
    # 运行jar包
    ENTRYPOINT ["java","-jar","/app.jar"]
    
    

    将DockerFile文件和jar包放于同意目录下。

  4. 进入jar包目录,执行命令,构建镜像

    docker build -t blog .
    

    末尾要加一个“.”

    查看镜像生成blog镜像

启动项目

启动命令

docker run -p 80:80 --name blog --link dockerredis:eredis --link dockermysql:emysql -d blog

eredis和emysql为redis和mysql镜像的命名用于连接。

使用命令查看是否允许成功

访问ip地址,检查是否部署成功

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/795119.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存