用Docker部署SSM项目
Docker环境的安装
卸载原有的环境
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装docker数据存储驱动包
yum install -y yum-utils device-mapper-persistent-data lvm2
采用国内阿里云的下载源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
检查安装源,如果“显示元数据缓存已建立”则表示优先选择了阿里云下载源
yum makecache fast
执行命令安装docker
yum -y install docker-ce
启动docker服务
service docker start 或 sudo systemctl start docker
开机自启动docker
sudo systemctl enable docker
docker阿里云镜像加速器
选择 镜像中心 下面的 镜像加速器 在右边的操作文档处选择对应系统的页签,将对应页签系统的下面的加速器内容复制到终端执行即可
再执行 docker pull 命令的时候,速度就会非常快
Docker安装mysql5.X
在本地建立mysql运行需要的文件夹,这是为了把docker内部的配置映射到宿主机,这样以后有任何修改只要改宿主机的内容即可,不要进入docker内部去修改了
在根目录建立mydata文件夹,然后建立mysql需要的文件夹
mkdir -p /mydata/mysql /mydata/mysql/log /mydata/mysql/data /mydata/mysql/conf
下载镜像
docker pull mysql:5.6
docker安装启动MySQL容器,并设置登陆密码为root
docker run -p 3306:3306 --name mysql -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
修改MySQL的配置文件 vim /mydata/mysql/conf/my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect="SET collation_connection = utf8_unicode_ci"
init_connect="SET NAMES utf8"
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
设置容器自启动
docker update --restart=always mysql
接着用客户端工具将数据库表数据导入即可
Docker安装运行Tomcat
在本地建立tomcat运行需要的文件夹,这是为了把docker内部的配置以及程序映射到宿主机,这样以后有任何修改只要改宿主机的内容即可,不要进入docker内部去修改了
在根目录建立mydata文件夹,然后建立tomcat需要的文件夹
mkdir -p /mydata/tomcat
下载Tomcat9镜像
docker pull tomcat:latest
先运行容易一下容器
docker run -d -p 8080:8080 --name tomcat tomcat:9
把容器内部对应的配置文件复制到宿主机对应的目录下面
docker cp tomcat:/usr/local/tomcat/conf /mydata/tomcat/
docker cp tomcat:/usr/local/tomcat/webapps /mydata/tomcat/
docker cp tomcat:/usr/local/tomcat/logs /mydata/tomcat/
停止tomcat容器
docker stop tomcat
删除tomcat容器
docker rm tomcat
上传后端war文件
将导出的war文件拷贝的 /mydata/tomcat/webapps 目录下
重新运行容器并将tomcat的配置文件映射到宿主机
docker run -d --name tomcat -p 8080:8080 -v /mydata/tomcat/conf/:/usr/local/tomcat/conf/ -v /mydata/tomcat/webapps/:/usr/local/tomcat/webapps/ -v /mydata/tomcat/logs/:/usr/local/tomcat/logs tomcat:9
设置容器自启动
docker update --restart=always tomcat
后端的程序就算完成了
Docker安装nginx
在本地建立nginx运行需要的文件夹,这是为了把docker内部的配置以及程序映射到宿主机,这样以后有任何修改只要改宿主机的内容即可,不要进入docker内部去修改了
在根目录建立mydata文件夹,然后建立nginx需要的文件夹
mkdir -p /mydata/nginx /mydata/nginx/conf /mydata/nginx/conf/conf.d /mydata/nginx/logs
获取nginx镜像
docker pull nginx
先运行容易一下容器
docker run -d -p 80:80 --name nginx nginx
把容器内部对应的配置文件复制到宿主机对应的目录下面
docker cp nginx:/usr/share/nginx/html /mydata/nginx/
docker cp nginx:/etc/nginx/nginx.conf /mydata/nginx/conf
docker cp nginx:/etc/nginx/conf.d/ /mydata/nginx/conf/
docker cp nginx:/var/log/nginx/ /mydata/nginx/logs/
停止并删除容器
docker stop nginx
docker rm nginx
上传前端代码
将前端代码上传到宿主机的 /mydata/nginx/html 路径
查看并修改nginx.conf文件
注意:
这里需要将location中的路径地址写成docker内部对应的前端代码存放的路径 /usr/share/nginx/html,
而不是宿主机的地址路径 /mydata/nginx/html
重新启动运行容器并将nginx的配置文件映射到宿主机
docker run -d -p 80:80 --name nginx -v /mydata/nginx/html/:/usr/share/nginx/html -v /mydata/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /mydata/nginx/conf/conf.d/default.conf:/etc/nginx/conf.d/default.conf -v /mydata/nginx/logs/nginx:/var/log/nginx nginx
设置容器自启动
docker update --restart=always nginx
这样就前端就配置结束了,可以通过浏览器访问看看
用Docker部署SSM项目相关推荐
- Docker 部署SpringBoot项目不香吗?
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:流星007 链接:toutiao.com/i68433912 ...
- Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo
Docker 部署SpringBoot项目整合 Redis 镜像做访问计数Demo 最终效果如下 大概就几个步骤 1.安装 Docker CE 2.运行 Redis 镜像 3.Java 环境准备 4. ...
- 又到了上云时刻啦!!!阿里云 Docker部署SpringBoot项目 方便测试的部署方式
又到了上云时刻啦!!!阿里云 Docker部署SpringBoot项目 方便测试的部署方式 部署思路: 具体步骤: 1.打成jar 2.上传到服务器 3.启动JDK容器 4.进入JDK 容器 启动 项 ...
- docker部署django项目、mysql主从搭建、django实现读写分离
目录 docker部署django项目 1.1 基于python基础镜像 将本地django项目打包并发到远程服务器上 将服务器上的.zip django项目解压 部署的具体流程 1.2 基于dock ...
- docker 部署Python项目 以及dockerfile文件的编写
Dockerfile文件详解:https://www.cnblogs.com/panwenbin-logs/p/8007348.html Docker的基本使用(部署python项目): https: ...
- docker部署sprinboot项目
掌握了基本的docker知识之后,我们就想尝试使用docker来部署一下项目,由于现在越来越多的项目都是直接以jar包启动的,即springboot项目,下面就简单演示一下使用用docker部署一个j ...
- 使用Idea部署SSM项目后,访问路径为url:8080/项目名_war_exploded的解决方案
使用Idea部署SSM项目后,访问路径为url:8080/项目名_war_exploded的解决方案 参考文章: (1)使用Idea部署SSM项目后,访问路径为url:8080/项目名_war_exp ...
- win10 docker部署gpu项目
win10 docker部署gpu项目 nvidia-docker win10安装docker 制作镜像 ubuntu18.04部署docker gpu项目 安装docker 配置docker使用gp ...
- shell脚本模拟键盘输入完成程序交互(定时重启docker部署的项目样例)
shell脚本模拟键盘输入完成程序交互(定时从起docker部署的项目样例) 背景 最近有一个利用docker部署的组件(test1)每天晚上12-1点总是会停止工作,但又找不到异常原因,重启后恢复正 ...
最新文章
- Django详解之models操作
- 唐朔飞计算机组成原理pdf_唐朔飞计算机组成原理第2版配套题库名校考研真题课后答案资料课后习题章节题库模拟试题...
- 利用async和await异步操作解决node.js里面fs模块异步读写,同步结果的问题
- 关于xml的模糊查询问题
- spring调用存储过程
- Javascript 原型和继承(Prototypes and Inheritance)
- 如何在博客等文章中添加带有滚动条的文本框
- 1001. A+B Format (20)---------------PAT开始
- Android之HandlerThread源码分析和简单使用(主线程和子线程通信、子线程和子线程通信)
- aws lambda使用_使用AWS Lambdas扩展技术堆栈
- Python在定义类方法时self的作用是什么?是否可以不写
- csdn专用必杀技----谷歌浏览器插件
- 美国NSA泄露文件中提到的神秘APT组织被曝光
- 如何做好一场技术分享,100%纯实用技巧输出
- 安装glib2.6x
- https之证书验证
- JavaScript提取非行间样式
- python key lambda_python – 什么是key = lambda
- 孤立森林异常检测算法原理和实战(附代码)
- Android日期加任意天数计算方式
热门文章
- 使用Everest和ACPI Patcher轻松生成dsdt.aml
- 守护进程--day33
- Unity2d Rubys Adventure 课程设计报告
- 暗影精灵3+ ubuntu18.04 安装显卡驱动
- coreos 安装 mysql_技术|手把手教你在 CoreOS 上构建你的第一个应用
- 艾美捷MTT细胞增殖检测试剂盒测定方案
- 用nodejs把多个PDF文件成为一个PDF文件
- 如何靠装X写出一篇关于“免费获取流量”的干货文章?
- 基于AM335X开发板 ARM Cortex-A8——Acontis EtherCAT主站开发案例
- 浅谈高校实验室安全管理系统重要性