Docker安装Nginx并部署及MySQL容器构建全过程
一.MySQL容器的构建
1.创建MySQL根目录及配置文件夹&data文件夹
mkdir -p mysql/{conf,data}
2.上传配置文件
将配置文件上传到conf文件夹(数据库配置文件已放到置顶资源中)
3.命令构建MySQL容器
/soft/mysql/conf/my.cnf:/etc/my.cnf目录为我们配置绑定的目录
/soft/mysql/data:/var/lib/mysql 是将data目录与MySQL目录进行绑定
docker run \ --name m1 \ -v /soft/mysql/conf/my.cnf:/etc/my.cnf \ -v /soft/mysql/data:/var/lib/mysql \ --privileged=true \ -e MYSQL_ROOT_PASSWORD=123456 \ --net mynet \ --ip 172.20.0.200 \ -d mysql/mysql-server:5.7
5.创建用户并赋予权限
进入到我们的MySQL容器中(m1为容器名)
docker exec -it m1 bash
进入容器后登录到MySQL
mysql -u root -p
输入密码后进入到MySQL赋予权限
grant all on *.* to root@'%' identified by '123456';
6.编辑Dockerfile文件准备构建镜像
Dockerfile文件详解:
openjdk为我们构建的基础镜像
/project为我们指定的工作目录,可以根据实际情况替换为自己的目录
spring-jar为我们要上传部署的项目,这里要提前将项目放到与当前dockerfile文件同级目录下,然后将当前项目复制到我们的工作目录
CMD java -jar spring.jar 是在创建镜像时运行当前项目
-mysql/addr 为指定配置文件中的运行地址
FROM openjdk WORKDIR /project COPY spring-jar /project CMD java -jar spring.jar -mysql/addr
7.在MySQL中用命令运行SQL文件
首先将准备好的SQL文件放到之前创建好的../mysql/data目录下
然后登录进入到当前Mysql中
在前面我们构建镜像时有一个将data目录与MySQL配置文件目录进行绑定
-v /soft/mysql/data:/var/lib/mysql
注:首先要创建好数据库并指定使用当前数据库
例:
create database shop use shop
现在我们可以执行以下命令进行运行SQL文件
source /var/lib/mysql/book.sql
二.Nginx安装与部署
1.拉取Nginx镜像
docker pull nginx
2.创建并运行Nginx容器
docker run -it -p 80:80 --name n1 nginx
我们利用IP访问一下,出现以下界面说明安装成功
上面的创建是最基础的创建Nginx容器,在后期我们还需要对Nginx进行配置,目录挂载等等
1.新建Nginx目录及配置目录
mkdir -p /soft/nginx/conf.d
进入到当前目录,将配置文件上传(配置文件在资源置顶,包含Nginx集群和域名映射)
再所需测试的前端文件资源进行上传(同上)
2.运行以下命令创建并配置容器
docker run -itd \ --name n1 \ -v /soft/nginx/conf.d:/etc/nginx/conf.d \ -v /soft/nginx/html:/etc/nginx/html \ -p 80:80 \ --net mynet \ --ip 172.20.0.104 \ nginx
容器创建运行完成后,在主机可以利用IP进行访问,访问成功说明前端部署成功了
3.本机域名映射
进入到我们本机的C:\Windows\System32\drivers\etc目录下
找到Host打开进行修改你要映射的域名
输入你的虚拟机IP以及域名
总结
到此这篇关于Docker安装Nginx并部署及MySQL容器构建的文章就介绍到这了,更多相关Docker安装Nginx部署MySQL容器构建内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
docker自定义网桥docker0及docker的开启,关闭,重启命令操作
这篇文章主要介绍了docker自定义网桥docker0及docker的开启,关闭,重启命令操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-03-03docker拉取镜像报错:Error response from daemon: Get “https://r
今天做完一个新项目,搭建了一个新的虚拟机,打算使用docker来搭建各种环境,发现拉取镜像报错Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp,所以接下来给大家介绍了docker拉取镜像报错的解决过程,需要的朋友可以参考下2024-08-08基于spring-boot和docker-java实现对docker容器的动态管理和监控功能[附完整源码下载]
Docker 是一个开源的应用容器引擎,和传统的虚拟机技术相比,Docker 容器性能开销极低,因此也广受开发者喜爱。这篇文章主要介绍了基于spring-boot和docker-java实现对docker容器的动态管理和监控 ,需要的朋友可以参考下2019-06-06
最新评论