码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Docker部署ssm项目到腾讯云服务器


    1. 安装docker
      参考官网
      https://docs.docker.com/engine/install/centos/

      1. 卸载旧版docker

        1. sudo yum remove docker \
        2. docker-client \
        3. docker-client-latest \
        4. docker-common \
        5. docker-latest \
        6. docker-latest-logrotate \
        7. docker-logrotate \
        8. docker-engine
      2. 安装docker

        1. 安装需要的软件包
          yum install -y yum-utils device-mapper-persistent-data lvm2
        2. 设置yum源(选择一个即可,阿里的镜像会快一点)
          1. yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo
          2. yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
        3. 安装docker-ce(社区版)
          sudo yum install docker-ce docker-ce-cli containerd.io
        4. 启动docker

          sudo systemctl start docker
        5. 查看docker版本

          docker -v

          至此docker安装完毕

    2. docker部署mysql

      1. 搜索mysql版本,选择需要的版本
        docker search mysql
      2. 拉取mysql镜像,我使用的是mysql8,直接下载默认的latest版本即可
        docker pull mysql
      3. 查看镜像命令
        docker images

      4. 创建并运行mysql容器
        docker run -d --name myMysql -v /data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql
      5. 查看容器命令
        docker ps -a

      6. 与容器交互,进入容器的/bin/bash终端
        docker exec -t -i myMysql /bin/bash

      7. 登录mysql
        mysql -u root -p
        输入密码123456,进入mysql
      8. 设置允许外部访问
        1. # 选择mysql数据库
        2. user mysql;
        3. # 查看user表
        4. select host,user from user;
        5. # 更新user表中root用户域属性,'%'表示允许外部访问
        6. update user set host='%' where user ='root';
        7. # 刷新权限
        8. FLUSH PRIVILEGES;
        9. # 执行授权语句
        10. GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
        11. # 再次查看user表
        12. select host,user from user;

        root 对应的是%即可。

      9. Ctrl+D或者输入'exit'退出容器
      10. 启动创建的mysql容器
        docker start myMysql
      11.  使用Navicat测试连接,IP地址填服务器地址,测试连接成功(没成功就百度多搜几篇教程,比如在安全开放开3306端口,我更新了好几次user表才连接成功)

        mysql环境配置完毕

    3. docker部署tomcat

      1. 拉取镜像,不建议使用latest的tomcat10的版本,tomcat版本选择和项目的大版本相同即可
        docker pull tomcat:8
      2. 运行tomcat容器,并进入容器内部进行测试

        1. docker run --name tomcat01 -p 8080:8080 -d tomcat:8
        2. docker exec -it tomcat01 /bin/bash

        查看文件目录,发现webapps目录下没有文件,ROOT文件在webapps.dist下

      3. 只需要回到tomcat目录,拷贝webapps.dist目录下的文件到webapps目录就行啦

        cp -r webapps.dist/* webapps/
      4. 浏览器输入ip地址:8080,即可访问到tomcat主页

      5.  exit退出tomcat容器,停止并删除文件,重新创建一个tomcat容器到/data目录并进入容器,重新拷贝webapps.dist目录下的文件到webapps目录

        1. exit
        2. docker stop tomcat01
        3. docker rm tomcat01
        1. docker run --privileged=true -v /data/tomcat:/usr/local/tomcat -p 8080:8080 --name tomcat01 -d tomcat:8
        2. docker exec -it tomcat01 /bin/bash
        3. cd tomcat
        4. cp -r webapps.dist/* webapps/
      6. 使用maven将ssm项目打成war包,用xftp或者宝塔面板上传到云服务器,更名成ROOT.war

         

      7. 拷贝war包到webapps目录,war包会自动解压并覆盖掉原来的ROOT目录
        cp /home/ROOT.war /data/tomcat/webapps
      8. 重新访问即可

    注意事项: 

    1. 记得开放相应的安全组,3306,8080
    2. 注意端口占用问题,解决方案
      用Docker在云服务器上快速安装tomcat,部署SSM项目_passerbyYSQ的博客-CSDN博客_docker部署ssm
    3. docker查看容器日志命令,我被404卡了一整天,最终通过查看tomcat日志发现是版本不合适,更改成tomcat8
      docker logs 容器id

    参考博客:

    用Docker在云服务器上快速安装tomcat,部署SSM项目_passerbyYSQ的博客-CSDN博客_docker部署ssm

  • 相关阅读:
    运算放大器正反馈负反馈判别法
    玩转Mysql系列 - 第17篇:存储过程&自定义函数详解
    那么多玩概念的头发护理产品,为什么只有戴森无法取代?
    SpringBoot后端统计网站的IP访问次数及地区
    一次服务器被入侵的处理过程分享
    计算机网络-传输层(TCP可靠传输(校验,序号,确认,重传),TCP流量控制,TCP拥塞控制(慢开始,拥塞避免)(快重传,快恢复))
    【LeetCode】29. 两数相除
    达梦数据库将DMHR模式下的表(迁移)导出为EXCEL文件
    2023-10-28 思考-精力管理-分析
    Android setText()错误
  • 原文地址:https://blog.csdn.net/qq_45707440/article/details/127453759
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号