Docker容器实战【二】使用Docker初次部署Tomcat

简介: 初次使用Docker的同学都会使用一个已有的基础镜像作为学习练手的工具,可以是mysql、nginx、redis,这里我们部署一个tomcat来进行docker基础命令的学习

Docker常用命令

# 指定镜像,运行成一个容器
$ docker run redis 

# 拉取名为redis的最新的镜像
$ docker pull redis

# 查看本地拥有的镜像
$ docker images 

# 查看本地所有的容器(包含未启动的)
$ docker ps -a 

# 根据镜像ID删除其镜像
$ docker rmi -f a10f849e1540[]

# 根据容器ID删除其容器
$ docker rm -f c7e6480f1590

# 进入容器
$ docker exec -it 容器名称 /bin/bash

实战之安装Tomcat

查找镜像

下载最新的tomcat镜像
$ docker pull tomcat
# 查看已下载的镜像
$ docker images
# 启动tomcat
docker run --name tomcat_test -p 8081:8080 -d tomcat
# --name : 是给容器起一个别名,方便使用,不然docker会默认给容器一个随机字符串的名称
# -p 端口映射,8081会在CentOS上开启端口, 8080是Docker容器内部的tomcat端口
# -d 表示在后台运行

# 查看已经启动的容器当前状态
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
a30891e7a71e        tomcat              "catalina.sh run"   1 minutes ago       Up 1 minutes        0.0.0.0:8081->8080/tcp   tomcat_test

访问tomcat地址
http://192.168.2.195:8081 注意这里访问的是映射到CentOS上的端口,不是容器内部的8080
image.png

# 进入容器内部
$ docker exec -it tomcat_test /bin/bash
root@a30891e7a71e:/usr/local/tomcat#
# 可以看到docker中tomcat的路径是/usr/local/tomcat,我们可以把自己的war包放在该目录的webapps下
# 退出容器 exit
root@a30891e7a71e:/usr/local/tomcat# exit

# 关闭tomcat容器
docker stop tomcat_test
# 移除容器
docker rm tomcat_test

总结

通过对tomcat的安装,加深了我们对docker基本了解,如果我们要制作自己的镜像代码该怎么办?

目录
相关文章
|
2月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
1101 4
|
2月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
154 5
|
2月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
2月前
|
XML Java 测试技术
《深入理解Spring》:IoC容器核心原理与实战
Spring IoC通过控制反转与依赖注入实现对象间的解耦,由容器统一管理Bean的生命周期与依赖关系。支持XML、注解和Java配置三种方式,结合作用域、条件化配置与循环依赖处理等机制,提升应用的可维护性与可测试性,是现代Java开发的核心基石。
|
2月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
811 7
|
2月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
498 5