• docker部署tomcat


    docker部署tomcat

    前言

    接上一篇 在Deepin15.10中安装Docker,现在部署一个tomcat到Docker容器中并运行。

    Docker 是服务器–客户端架构。命令行运行docker命令有:

    # service 命令的用法
    $ sudo service docker start
    
    # systemctl 命令的用法
    $ sudo systemctl start docker
    
    • 1
    • 2
    • 3
    • 4
    • 5

    1. image 文件

    Docker把应用程序及其依赖,打包在 image 文件中。

    • 只有通过 image 文件,才能生成 Docker 容器。

    • image 文件可以看作是容器的模板。Docker 根据 image 文件生成容器的实例。

    • 同一个 image 文件,可以生成多个运行的容器实例。

    • image 是二进制文件。实际开发中,一个 image 文件往往通过继承另一个 image 文件,加上一些个性化设置而生成。

      列出本机的所有 image 文件。

      $ sudo docker image ls

      删除 image 文件

      $ sudo docker image rm [imageName]

    部署的 tomcat就是一个 image 文件。

    2. 部署Tomcat

    (1)搜索tomcat镜像

    search 语法:

    sudo docker search 镜像名称:镜像TAG
    
    # 如: 没有加TAG,表示默认搜索的是最新版本的tomcat镜像
    $ sudo docker search tomcat
    
    # 如:搜索 tomcat 8.5 版本
    $ sudo docker search tomcat:8.5
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述

    (2)拉取tomcat镜像
    下载第一个Stars最高的镜像

    # 拉取 tomcat镜像
    sudo docker pull tomcat
    
    # 查看docker所有的镜像
    sudo docker image ls   # sudo docker images
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    (3)运行tomcat

    命令如下:

    sudo docker run
         -d
         -p 8090:8080
    	 --name my_tomcat
    	 -v /data/my_tomcat:/usr/local/tomcat/webapps
    	 tomcat:8.5
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • docker run 其实是 create 和 start 两个命令的合并
    • -d 表示后台运行容器,并返回容器ID
    • -p 8090:8080 表示 将容器的8080端口映射到主机的8090端口,前者是主机访问端口:后者是容器内部端口
    • --name 给容器起别名,如 my_tomcat
    • tomcat:8.5 表示 镜像名称:镜像TAG,默认最新版可以不加TAG
    • -v 表示把容器中的某个文件夹挂载到主机中,格式: -v 主机目录:容器目录

    docker run -p 8090:8080 tomcat 命令,其实是运行容器,并启动容器内的tomcat

    在这里插入图片描述

    3.进入tomcat容器目录

    进入容器目录有两种方式:

    (1) 进入一个正在运行容器的目录

    要点: 获取正在运行容器的ID

    需要使用两个命令:

    docker ps     # 查看正在运行的容器,并得到 容器id
    
    # 进入tomcat容器内部
    docker exec -it [容器id] /bin/bash  # 中间那个是容器id 就是 CONTAINER_ID
    #  -it 表示进入
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述
    (2) run运行容器并进入容器目录

    sudo docker run -it -p 8090:8080 tomcat /bin/bash     # 运行容器并进入容器目录,但不启动 tomcat
    
    • 1

    在这里插入图片描述

    4. 停止已运行的容器

    docker stop [容器id]   # 如 sudo docker stop f96d191f065c
    
    • 1

    在这里插入图片描述

    先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

  • 相关阅读:
    ChatGPT技术原理
    2014华为Java笔试题+数据库题
    在阿里做前端程序员,我是这样规划的
    JAVA中PRIORITYQUEUE详解
    微服务技术栈-初识Docker
    多路复用补充
    大管家前端线上笔试
    distcc分布式编译
    ActiveState Platform - November 2022
    错题本1:为什么往div盒子模型添加不上背景颜色和背景图片?
  • 原文地址:https://blog.csdn.net/m0_67392931/article/details/126082646