创建带Tomcat服务的Centos Docker镜像

简介:

  Tomacat服务器是一个免费的开源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下普遍使用,是开发和高度JSP程序的首选。 
下面我就分步骤向大家介绍如何创建带Nginx服务的Centos Docker镜像。 
基础镜像:

[root@localhost ~]# docker images

REPOSITORY     TAG       IMAGE ID      CREATED      VIRTUAL SIZE

sshd    dockerfile     411d5fb16366     2 days ago      278 MB

centos   latest       0f73ae75014f     5 weeks ago     172.3 MB

其中镜像sshd:dockerfile是以镜像centos为基础的开放SSH服务的镜像。 
第一部分,手工配置并生成镜像 
一 、以镜像sshd-centos为基础新建容器,并指定容器的ssh端口22映射到宿主机的2222端口上.

docker run -d -p 2222:22 sshd:dockerfile /usr/sbin/sshd -D

查看容器运行情况:

[root@localhost ~]# docker ps -a

CONTAINER ID  IMAGE        COMMAND         CREATED      STATUS     PORTS                  NAMES

bdde7d657620  sshd:dockerfile "/usr/sbin/sshd -D"  6 seconds ago Up 5 seconds 0.0.0.0:2222->22/tcp   romantic_bardeen

二、在宿主机上通过ssh登录容器

ssh localhost -p 2222

如果提示没有ssh命令请安装openssh-clients

yum install -y openssh-clients

三、下载源码包及相关软件 
1、安装wget

cd /usr/local/src yum install -y wget

2、下载源码包 
下载JDK

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u60-b27/jdk-8u60-linux-x64.tar.gz


上面的地址要去官网的地址去获取,每超过30分钟就会失效:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

下载Tomcat

wget http://apache.fayea.com/tomcat/tomcat-8/v8.0.27/bin/apache-tomcat-8.0.27.tar.gz


四、安装JDK

1、解压源码包

1
2
tar  -zxvf jdk-8u60-linux-x64. tar .gz
mv  jdk1.8.0_60  /usr/local/jdk1 .8.0_60

2、配置JDK环境脚本

1
2
3
4
5
6
touch   /etc/profile .d /java .sh
echo  "JAVA_HOME=/usr/local/jdk1.8.0_60"  >>  /etc/profile .d /java .sh
echo  "JAVA_BIN=/usr/local/jdk1.8.0_60/bin"  >>  /etc/profile .d /java .sh
echo  "JRE_HOME=/usr/local/jdk1.8.0_60/jre"  >>  /etc/profile .d /java .sh
echo  "PATH=$PATH:/usr/local/jdk1.8.0_60/bin:/usr/local/jdk1.8.0_60/jre/bin"  >>  /etc/profile .d /java .sh
echo  "CLASSPATH=/usr/local/jdk1.8.0_60/jre/lib:/usr/local/jdk1.8.0_60/lib:/usr/local/jdk1.8.0_60/jre/lib/charsets.jar"  >>  /etc/profile .d /java .sh

3、导入环境脚本

1
/etc/profile .d /java .sh

4、查看是否安装成功

java  -version

如果安装成功就会显示java版本信息

五、安装tomcat 
1、解压源码包

1
2
tar  -zxvf apache-tomcat-8.0.27. tar .gz
mv  apache-tomcat-8.0.27  /usr/local/tomcat

2、修改配置文件

cd /usr/local/tomcat/bin cp catalina.sh catalina.sh.bak >catalina.shecho '#!/bin/sh'>>catalina.shecho "JAVA_HOME=/usr/local/jdk1.8.0_60">>catalina.shecho "CATALINA_HOME=/usr/local/tomcat" >> catalina.sh grep -v '^#!/bin/sh' catalina.sh.bak >> catalina.sh

3、启动tomcat服务

/usr/local/tomcat/bin/catalina.sh start


查看进程

[root@bdde7d657620 bin]# ps aux

USER PID  %CPU  %MEM  VSZ   RSS   TTY    STAT   START  TIME COMMAND root 1   0.0  0.3   82456  3436  ?     Ss   07:00  0:00 /usr/sbin/sshd -D root 85  0.0  0.4   89792  4520  ?      Ss   07:35  0:00 sshd: root@pts/0

root 87  0.0  0.1  13264  1976 pts/0    Ss   07:35   0:00 -bash root 316  93.3  7.4    2165884 75864 pts/0   Sl  08:31   0:02 /usr/local/jdk1.8.0_60/bin/java -Djava.util root 332  0.0  0.1  21284  1268   pts/0   R+  08:31    0:00 ps aux

六、新建启动脚本

vi /usr/local/sbin/run.sh

脚本内容:

#!/bin/bash

/usr/sbin/sshd -D & /usr/local/tomcat/bin/catalina.sh run

七、生成镜像 
1、退出容器,运行下面的命令查看窗口信息



本文转自 Mr_sheng 51CTO博客,原文链接:
http://blog.51cto.com/sf1314/1980337


相关文章
|
26天前
|
Docker 容器
将本地的应用程序打包成Docker镜像
将本地的应用程序打包成Docker镜像
|
10天前
|
NoSQL PHP MongoDB
docker push推送自己搭建的镜像
本文详细介绍了如何搭建和复盘两个Web安全挑战环境:人力资源管理系统和邮件管理系统。首先,通过Docker搭建MongoDB和PHP环境,模拟人力资源管理系统的漏洞,包括nosql注入和文件写入等。接着,复盘了如何利用这些漏洞获取flag。邮件管理系统部分,通过目录遍历、文件恢复和字符串比较等技术,逐步绕过验证并最终获取flag。文章提供了详细的步骤和代码示例,适合安全研究人员学习和实践。
36 3
docker push推送自己搭建的镜像
|
14天前
|
Docker 容器
|
26天前
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
48 9
|
26天前
|
存储 缓存 运维
Docker镜像采用分层存储,每层代表镜像的一部分,如基础组件或应用依赖,多层叠加构成完整镜像
Docker镜像采用分层存储,每层代表镜像的一部分,如基础组件或应用依赖,多层叠加构成完整镜像。此机制减少存储占用,提高构建和传输效率。Docker还通过缓存机制提升构建和运行效率,减少重复工作。文章深入解析了Docker镜像分层存储与缓存机制,包括具体实现、管理优化及实际应用案例,帮助读者全面理解其优势与挑战。
44 4
|
1月前
|
存储 关系型数据库 Linux
【赵渝强老师】什么是Docker的镜像
Docker镜像是一个只读模板,包含应用程序及其运行所需的依赖环境。镜像采用分层文件系统,每次修改都会以读写层形式添加到原只读模板上。内核bootfs用于加载Linux内核,根镜像相当于操作系统,上方为应用层。镜像在物理存储上是一系列文件的集合,默认存储路径为“/var/lib/docker”。
|
1月前
|
缓存 JavaScript 安全
深入理解Docker镜像构建过程
深入理解Docker镜像构建过程
75 0
|
Linux 应用服务中间件 nginx
CentOS7 自定义服务
服务配置 服务配置主目录存放路径 # cd /usr/lib/systemd/system 文件内容格式 [Unit]:服务的说明 Description:描述服务 After:在哪些描述服务类别之后启动 [Service]服务运行参数的设...
819 0
|
1月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第16天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括配置系统源、安装 SQL Server 2019 软件包以及数据库初始化,确保 SQL Server 正常运行。

热门文章

最新文章