docker构建Nginx容器和tomcat容器

docker实战

基础必备 :
1.创建相应目录 条理清晰些
2.在docker环境的基础上安装httpd服务并启动 ,关闭防火墙。
3.在/var/www/html 创建两个目录 一个用于挂载镜像 另一个用于上传软件包
例如:
在这里插入图片描述
这是我自己的

一、构建Nginx容器

(一)简介
1.Nginx是一款轻量级的Web服务器
*占用内存少
*并发能力强
*可做反向代理
使用Dockerfile方法创建
1.下载基础镜像
2.建立工作目录(存放Dockerfile、相关资源)
[root@localhost ~]# mkdir nginx

[root@localhost ~]# cd nginx/

3.创建并编写Dockerfile文件

[root@localhost nginx]# vim Dockerfile

#设置基础镜像
FROM centos
#维护该镜像的用户信息
MAINTAINER teacher xsy
#设置本地yum源
RUN mkdir /etc/yum.repos.d/bak ; mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
ADD centos.repo /etc/yum.repos.d/centos.repo
#安装相关依赖包
RUN yum clean all ; yum -y install wget proc-devel net-tools gcc zlib zlib-devel make --skip-broken
#下载并解压nginx源码包
RUN wget http://192.168.10.1/other/nginx-1.12.0.tar.gz
RUN tar zxf nginx-1.12.0.tar.gz
#切换目录
WORKDIR nginx-1.12.0
#编译安装
RUN ./configure --prefix=/usr/local/nginx --without-http_rewrite_module && make && make install
#开启端口
EXPOSE 80
EXPOSE 443
#修改nginx文件,以非daemon方式启动
RUN echo “daemon off;” >>/usr/local/nginx/conf/nginx.conf
#复制服务启动脚本并设置权限
WORKDIR /root/nginx
ADD run.sh /run.sh
RUN chmod 775 /run.sh
#启动容器时执行脚本
CMD ["/run.sh"]

FROM centos
MAINTAINER teacher xsy
RUN mkdir /etc/yum.repos.d/bak ; mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
ADD centos.repo /etc/yum.repos.d/centos.repo
RUN yum clean all ; yum -y install wget proc-devel net-tools gcc zlib zlib-devel make --skip-broken
RUN wget http://192.168.100.102/bao/nginx-1.12.0.tar.gz
RUN tar zxf nginx-1.12.0.tar.gz
WORKDIR nginx-1.12.0
RUN ./configure --prefix=/usr/local/nginx --without-http_rewrite_module && make && make install
EXPOSE 80
EXPOSE 443
RUN echo "daemon off;" >>/usr/local/nginx/conf/nginx.conf
WORKDIR /root/nginx
ADD run.sh /run.sh
RUN chmod 775 /run.sh
CMD ["/run.sh"]

完整可复制 只需要改成你自己的IP 和 软件包路径
4.编写执行脚本内容

[root@localhost nginx]# vim run.sh
#!/bin/bash
/usr/local/nginx/sbin/nginx

5.编写yum源文件

[root@localhost nginx]# vim centos.repo
[local]
name=centos7
baseurl=http://192.168.100.102/centos7  //指定该yum源的IP地址及目录
enabled=1
gpgcheck=0

6.生成镜像

**[root@localhost nginx]# docker build -t nginx:xsy .**
[root@localhost nginx]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               xsy                351ad6322a1e        27 minutes ago      311MB
centos              latest              75835a67d134        4 months ago        200MB

7.启动容器进行测试

[root@localhost nginx]# docker run -d -P nginx:xsy
[root@localhost nginx]# docker ps -a
[root@localhost nginx]# curl http://192.168.100.102:32769

构建Tomcat容器

Tomcat是一个免费开源的轻量级的Web服务器
适用于中小型企业
适合开发和调试JSP程序
处理静态页面的能力不强
使用Dockerfile方法创建
创建工作目录
在这里插入图片描述
这里需要jdk的包 是必须依赖安装的
编写Dockerfile文件
#设置基础镜像
FROM centos
#维护该镜像的用户信息
MAINTAINER teacher xsy
#设置本地yum源
RUN mkdir /etc/yum.repos.d/bak ; mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
ADD centos.repo /etc/yum.repos.d/centos.repo
#安装相关依赖包
RUN yum clean all ; yum -y install wget
ADD jdk1.8.0_91 /usr/local/java
ENV JAVA_HOME /usr/local/java
ENV JAVA_BIN /usr/local/java/bin
ENV JRE_HOME /usr/local/java/jre
ENV PATH $PATH:/usr/local/java/bin/:/usr/local/java/jre/bin
ENV CLASSPATH /usr/local/java/jre/bin:/usr/local/java/lib:/usr/local/java/jre/lib/charsets.
jar
RUN wget http://192.168.100.102/bao/apache-tomcat-8.5.16.tar.gz
RUN tar xf apache-tomcat-8.5.16.tar.gz ; mv apache-tomcat-8.5.16 /usr/local/tomcat
EXPOSE 8080
ADD run.sh /run.sh
RUN chmod 775 /run.sh
CMD ["/run.sh"]

FROM centos
MAINTAINER teacher xsy
RUN mkdir /etc/yum.repos.d/bak ; mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
ADD centos.repo /etc/yum.repos.d/centos.repo
RUN yum clean all ; yum -y install wget
ADD jdk1.8.0_91 /usr/local/java
ENV JAVA_HOME /usr/local/java
ENV JAVA_BIN /usr/local/java/bin
ENV JRE_HOME /usr/local/java/jre
ENV PATH $PATH:/usr/local/java/bin/:/usr/local/java/jre/bin
ENV CLASSPATH /usr/local/java/jre/bin:/usr/local/java/lib:/usr/local/java/jre/lib/charsets.jar
RUN wget http://192.168.100.102/bao/apache-tomcat-8.5.16.tar.gz
RUN tar xf apache-tomcat-8.5.16.tar.gz ; mv apache-tomcat-8.5.16 /usr/local/tomcat

EXPOSE 8080

ADD run.sh /run.sh
RUN chmod 775 /run.sh
CMD ["/run.sh"]
~                           

~

编写执行脚本内容
[root@localhost tomcat]# ll /root/tomcat/
总用量 177132
-rw-r–r-- 1 root root 82 2月 27 14:17 centos.repo
-rw-r–r-- 1 root root 802 2月 27 14:17 Dockerfile
drwxr-xr-x 8 10 143 255 4月 1 2016 jdk1.8.0_91
-rw-r–r-- 1 root root 181367942 2月 27 14:04 jdk-8u91-linux-x64.tar.gz
-rw-r–r-- 1 root root 56 2月 27 15:00 run.sh

[root@localhost tomcat]# cat run.sh 
#!/bin/bash
/usr/local/tomcat/bin/startup.sh
tailf /run

生成镜像

[root@localhost ~]# docker build -t tomcat:xsy .
[root@localhost ~]# docker images

运行容器并验证

[root@localhost ~]# docker run -d -p 1234:8080 --name tomcat tomcat:xsy
[root@localhost ~]# docker ps -a
[root@localhost ~]# curl http://192.168.100.102:1234

有心人真的看的话 注意要根据自己的真实环境 做改变 一般就是 Dockerfile文件和yum源仓库

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值