centos7
创建一个mycentos7的文件 vim mycentos7
FROM centos:7
MAINTAINER qyp_mail@sohu.com
ENV mypath /user/local
# 进入到contos后的目录
WORKDIR $mypath
RUN yum -y install vim
# 安装支持ifconfig命令
RUN yum -y install net-tools
EXPOSE 80
CMD echo $MYPATH
CMD echo "success--------------ok"
# 打开交互式的shell
CMD /bin/bash
构建镜像并发送到腾讯云
1.构建镜像
docker build -f mycentos7 -t mycentos7:v1 .
-f filename, -t 镜像名称:TAG 最后跟一个. 表示当前目录下
2.运行镜像
docker run -it mycentos7:v1
-i 交互模式运行容器, -t 为容器重新分配一个伪输入终端
3.登陆到腾讯云
docker register: sudo docker login --username=100011014874 ccr.ccs.tencentyun.com
然后输入密码
4.给镜像打个TAG
sudo docker tag [ImageId] ccr.ccs.tencentyun.com/qiao_namespace/mycentos7:[tag]
5.推送镜像到腾讯云
sudo docker push ccr.ccs.tencentyun.com/qiao_namespace/mycentos7:[tag]
jdk
将jdk的压缩包和jdk的dockerfile文件放在同一个目录下
[root@VM_0_5_centos jdk]# ls
jdk-8u181-linux-x64.tar.gz myjdk
下面是jdk的dockerfile文件
ROM ccr.ccs.tencentyun.com/qiao_namespace/mycentos7:v1
MAINTAINER qyp<qyp_mail@sohu.com>
# 复制jdk
ADD jdk-8u181-linux-x64.tar.gz /usr/local
# 配置jdk环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_181
ENV CLASSHOME $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH $PATH:$JAVA_HOME/bin
然后将通过该dockerfile build成镜像,将镜像推送到腾讯云, 镜像仓库为myjdk8 tag为v1
tomcat
将tomcat的压缩包和dockerfile文件放在同一目录下
FROM ccr.ccs.tencentyun.com/qiao_namespace/myjdk8:v1
MAINTAINER qyp<qyp_mail@sohu.com>
# 把宿主机当前上下文的c.txt拷贝到容器/usr/local/路径下
# COPY c.txt /usr/local/cincontainer.txt
# 把tomcat添加都容器中 ADD指令自带解压功能
ADD apache-tomcat-8.5.47.tar.gz /usr/local
# 这个参数由jenkins传递过来(也可以写固定)
ARG projectpath
# 将项目复制到镜像的指定位置
COPY $projectpath /usr/local/apache-tomcat-8.5.47/webapps
# 设置工作访问时候的WORKDIR路径,登录落脚点
ENV mypath /usr/local
WORKDIR $mypath
# 配置jdk和tomcat环境变量
ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.47
ENV CATALINA_BASE /usr/local/apache-tomcat-8.5.47
ENV PATH $PATH:$CATALINA_HOME/lib:$CATALINA_HOME/bin
# 容器运行时监听的端口
EXPOSE 8080
#启动时运行tomcat
CMD /usr/local/apache-tomcat-8.5.47/bin/startup.sh && tail -f /usr/local/apache-tomcat-8.5.47/bin/logs/catalina.out