docker部署MySQL和tomcat
Docker应用部署
MySQL部署
前情提要:
- 容器内网络服务和外部机器不能直接通信
- 外部机器和宿主机可以直接通信
- 宿主机和容器可以直接通信
- 将容器端口映射到宿主的一个端口上,称为:端口映射
部署步骤:
-
拉取镜像
-
启动容器
# 先在当前目录下创建mysql目录 docker run -id \ -p 3307:3306 \ --name=mymysql \ -v $PWD/conf:/etc/mysql/config.d \ -v $PWD/logs:/logs \ -v $PWD/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=123456 \ mysql:8
- -p 3307:3306 把容器的3306端口映射到宿主机的3307端口上-
- -v $PWD/conf:/etc/mysql/config.d 挂载配置
- -v $PWD/logs:logs挂载日志
- -v $PWD/data:/var/lib/mysql 挂载数据目录
- -e MYSQL_SQL_PASSWORD=123456 初始化root用户密码
tomcat部署
-
先拉取镜像
docker pull tomcat
默认拉取最新版
-
启动容器
先创建一个目录
mkdir tomcat 这个目录没啥特别含义,主要只后会把这个目录与tomcat容器映射
cd tomcat
docker run -id --name=my_tomcat \ -p 8080:8080 #端口映射,tomcat默认端口是8080 -v $PWD:/usr/local/tomcat/webapps \ #把当前目录和tomcat的webapp目录挂载起来 tomcat
这样就可以启动起来了,然后可以直接将项目打包放到tomcat这个目录下。
例如我们可以在这个目录下创建一个项目test,在里面写一个html文件
然后到浏览器中访问它
就访问到了