docker常用应用部署

docker相关的应用部署的总体步骤:
步骤1:获取对应镜像;
步骤2:生成容器

  • 外部是不能直接访问容器数据的,但是可以通过容器跟主机间的端口映射来间接访问容器数据,所以必须要带上-p参数,格式为:-p 主机(宿主)端口:容器端口,外部设备可以通过主机ip:主机端口来间接访问容器内指定数据
  • 因为容器类似于进程,如果被kill或删掉,则容器中的数据就不存在,如果想要容器数据的持久化,最好先了解下数据卷的概念:docker入门教程

步骤3:在容器中操作或外部访问

MySQL部署

  1. 搜索mysql镜像
    在这里插入图片描述

  2. 拉取mysql镜像
    在这里插入图片描述

  3. 创建mysql容器

步骤:

  1. 在/root目录下创建mysql目录用于存储mysql数据信息(作为数据卷);
  2. 执行docker run命令:

docker run命令说明:

docker run -id --name=test_mysql -p 3307:3306 \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=wenxiaoba \
mysql:latest
  • -p 3307:3306:将容器的3306端口映射到主机的3307端口(外部机器只能通过3307端口来访问mysql数据,一般情况下2个端口设置成一样的,这里为了明显区分外部访问端口和容器端口所以设置了不一样,后面的示例则会保持一致)
  • -v $PWD/conf:/etc/mysql/conf.d:将主机当前conf目录挂载到容器的/etc/mysql/conf.d(配置目录)
  • -v $PWD/logs:/logs:将主机当前目录下的logs目录挂载到容器的logs目录(日志目录)
  • -v $PWD/data:/var/lib/mysql:将主机当前目录下的data目录挂载到容器的/var/lib/mysql目录(mysql数据目录)
  • -e MYSQL_ROOT_PASSWORD=wenxiaoba:初始化mysql的root用户的密码

注意:$PWD类似于linux的pwd命令,表示列出当前命令所在路径,$PWD即表示当前路径

在这里插入图片描述

  • 操作容器中的mysql
    在这里插入图片描述

  • 远程连接mysql并操作
    在这里插入图片描述
    远程操作之后,容器内mysql可以查看到是有更新的
    在这里插入图片描述

tomcat部署

步骤1:查找并拉取tomcat

如果已有tomcat镜像,则不用进行此步骤
在这里插入图片描述

步骤2:创建容器

执行docker run命令:

docker run -id --name=test_tomcat -p 8080:8080 tomcat:latest

参数说明:

  • -p 8080:8080:将容器的8080端口(后一个)映射到主机的8080端口(前一个),外部设备就可通过访问主机的8080端口,间接访问tomcat容器。
    在这里插入图片描述
    注意:tomcat容器刚创建成功时,/usr/local/tomcat下的webapps目录为空,webapps.dist有tomcat欢迎页等配置文件(docker官方提供的,有人说是因为想让用户不忘记挂载数据卷而设置的,实际原因不得而知),tomcat通过webapps目录访问资源的,所以我们需要将webapps.dist的内容复制到webapps中,复制成功后,访问对应Ip和端口即可显示默认的欢迎页
    在这里插入图片描述

步骤3:编写并访问资源

我们可以在容器中的/usr/local/tomcat/webapps/ROOT目录下编写资源并访问
在这里插入图片描述

在这里插入图片描述

nginx部署

步骤1:查找并拉取nginx

在这里插入图片描述

步骤2:创建容器

在这里插入图片描述
创建成功后,访问服务器的80端口,能正常访问nginx的欢迎页面
在这里插入图片描述

编写并访问资源

在nginx容器中,nginx默认的资源访问路径是:/usr/share/nginx/html,所以我们在该目录下添加test.html文件
在这里插入图片描述
访问test.html:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值