Docker安装Nginx
docker pull nginx #下载Nginx
![](https://img.haomeiwen.com/i14992118/8c3b880108c4ad7f.png)
查看镜像 发现下载成功
![](https://img.haomeiwen.com/i14992118/42081c55710466de.png)
启动Nginx
docker run -d --name nginx01 -p 3344:80 nginx
![](https://img.haomeiwen.com/i14992118/6560e1faa72921f9.png)
![](https://img.haomeiwen.com/i14992118/b40a606dfd06016e.png)
查看进程
docker ps #查看进程
![](https://img.haomeiwen.com/i14992118/20a9dbe8d13464e2.png)
curl对本机发起请求进行测试
curl localhost:3344 #curl命令对本机发起请求进行测试
![](https://img.haomeiwen.com/i14992118/192cdeecdfd0439b.png)
端口暴露的概念
![](https://img.haomeiwen.com/i14992118/95279c62b487a5cf.png)
进入nginx
docker exec -it nginx01 /bin/bash
![](https://img.haomeiwen.com/i14992118/d8323f2f6b3c73a5.png)
寻找nginx位置的命令
whereis nginx
![](https://img.haomeiwen.com/i14992118/28c3d662cd38c0ee.png)
查看nginx的配置文件
cd /etc/nginx
![](https://img.haomeiwen.com/i14992118/a66151c8488e7eed.png)
Docker安装Tomcat
官方的使用 测试时候使用 测完即删除
![](https://img.haomeiwen.com/i14992118/edebbce9c9baf93a.png)
docker run -it --rm tomcat:9.0 #测试时候使用 测完即删除
安装tomcat
docker pull tomcat:9.0
![](https://img.haomeiwen.com/i14992118/04cfc75fed162cee.png)
查看镜像
docker images
![](https://img.haomeiwen.com/i14992118/f6c9d3be18bc6255.png)
运行tomcat
![](https://img.haomeiwen.com/i14992118/5c8d81aef17cd2dc.png)
docker run -d -p 3355:8080 --name tomcat01 tomcat
# -d:以后端方式运行 -p 3355:8080 : 以外端的3355端口映射docker中的8080端口
# 这条命令没有指定tomcat版本号 所以默认启动最新版本的tomcat 但是发现本地没有最新版本的镜像 所以先进行的拉取pull
此时访问tomcat 发现404页面
![](https://img.haomeiwen.com/i14992118/2a246248840b62a5.png)
进入tomcat容器
docker exec -it tomcat01 /bin/bash
![](https://img.haomeiwen.com/i14992118/4dedae4e54400774.png)
![](https://img.haomeiwen.com/i14992118/88e2b20ec231ba6d.png)
![](https://img.haomeiwen.com/i14992118/58c04682faadb747.png)
![](https://img.haomeiwen.com/i14992118/a368f7b139f08433.png)
进入webapps.dist
cd webapps.dist
![](https://img.haomeiwen.com/i14992118/3e114eeb9acd4d48.png)
拷贝webapps.dist下的所有内容到webapps下
cp -r webapps.dist/* webapps
![](https://img.haomeiwen.com/i14992118/ba8c0a4d5f181c2a.png)
此时再次通过外网访问3355端口的tomcat 访问成功
![](https://img.haomeiwen.com/i14992118/a904fe22b8ac3439.png)
安装mysql
搜索mysql版本
docker search mysql
![](https://img.haomeiwen.com/i14992118/c6e9ec8d30203a95.png)
pull 一个5.7 mysql版本
docker pull mysql:5.7
![](https://img.haomeiwen.com/i14992118/440d3e1cd0490740.png)
运行mysql5.7容器,并做数据挂载
docker run -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7
# -d:后台运行
# -p:端口映射
# -v:数据挂载
# -e:配置环境 这里配置mysql的password
此时用SQyog连接mysql 连接成功
![](https://img.haomeiwen.com/i14992118/30247c1420c0db42.png)
测试连接本地vm虚拟机上的docker数据库连接成功
![](https://img.haomeiwen.com/i14992118/3441fbd975ba8c9a.png)
查看本地的home目录下,发现已经同步生成了mysql文件
![](https://img.haomeiwen.com/i14992118/e22ba68f9a4737c1.png)
![](https://img.haomeiwen.com/i14992118/351757ef90a7629a.png)
测试在Navicat新建一个test数据库
![](https://img.haomeiwen.com/i14992118/37603c448b78f1f6.png)
![](https://img.haomeiwen.com/i14992118/b8a85e8bad48e3a6.png)
![](https://img.haomeiwen.com/i14992118/b9a1c7810e8feff5.png)
测试删掉mysql容器,数据是否会丢失
docker rm -f mysql01 #移除mysql
![](https://img.haomeiwen.com/i14992118/f88a2df1bd67b805.png)
即使移除了docker中的mysql镜像,虚拟机上的同步映射文件中的test数据库依然存在
![](https://img.haomeiwen.com/i14992118/98f6cfb33798722d.png)
网友评论