一款必须掌握的虚拟容器技术:Docker( 三 )


支持vim编辑
支持命令
在根目录下的目录里新建文件并写入
FROM centosMAINTAINER angeninENV MYPATH /usr/localWORKDIR $MYPATHRUN yum -y install vimRUN yum -y install net-toolsEXPOSE 80CMD echo $MYPATHCMD echo "success------------ok"CMD /bin/bash
2.build成镜像 build -f // -t :1.2 .
出现这东西不要慌,继续等 。
build镜像成功
运行. run -it :1.2,需要的功能已实现 。
案例二(综合案例):
制作自定义,然后在宿主机上用数据卷将测试的web服务test发布 。
创建目录mkdir -p ///并在此目录下新建和c.txt文件 。
将jdk和安装的压缩包拷贝进目录(jdk-8u251-linux-x64.tar.gz和--8.5.54.tar.gz)
链接: 密码:71sm
在中写入
FROM centosMAINTAINER angenin#把宿主机当前上下文的c.txt拷贝到容器/usr/local路径下COPY c.txt /usr/local/cincontainer.txt#把java与tomcat添加到容器中ADD jdk-8u251-linux-x64.tar.gz /usr/local/ADD apache-tomcat-8.5.54.tar.gz /usr/local/#安装vim编辑器RUN yum -y install vim#设置工作访问时候的WORKDIR路径,登录落脚点ENV MYPATH /usr/localWORKDIR $SMYPATH#配置java与tomcat环境变量ENV JAVA_HOME /usr/local/jdk1.8.0_251ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarENV CATALINA_HOME /usr/local/apache-tomcat-8.5.54ENV CATALINA_BASE /usr/local/apache-tomcat-8.5.54ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin#容器运行时监听的端口EXPOSE 8080#启动时运行 tomcat#第一种写法# ENTRYPOINT ["/usr/local/apache-tomcat-8.5.54/bin/startup.sh"]#第二种写法# CMD ["/usr/local/apache-tomcat-8.5.54/bin/catalina. sh","run"]#第三种写法CMD /usr/local/apache-tomcat-8.5.54/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.54/bin/logs/catalina.out
build -t.(所在目录下有文件,省略-f )
【一款必须掌握的虚拟容器技术:Docker】中途出现这个错误:

解决办法:
请输入:wget -O /etc/yum.repos.d/-Base.repo
然后输入: run -d -p 9080:8080 --name myt8 -v ////test:/usr/local/--8.5.54//test -v ////:/usr/local/--8.5.54/logs --=true
-d为后台运行,-p为指定端口,-v设置两个数据卷,--=true赋予扩展权限
然后输入网站加端口号
(没两个目录,所以不用像一样要先删除一个才能运行)

一款必须掌握的虚拟容器技术:Docker

文章插图
进入宿主机的/test目录,然后创建WEB-INF目录并在里面新建web.xml 。
Tomcat Manager ApplicationTomcat Manager Application
返回test目录,新建a.jsp文件 。
Insert title here-----------welcome-----------


重启容器容器id,访问a.jsp页面 。(重启是因为写了配置文件web.xml,如果只改页面不用重启,直接刷新页面即可)
在进入宿主机的/目录,cat .out查看容器的日志 。总结
在里用安装mysql
安装: pull mysql:8.0.18
安装.6: pull mysql:5.6
运行.6容器: run -p 12345:3306 --name mysql -v //mysql/conf:/etc/mysql/conf.d -v //mysql/logs:/logs -v //mysql/data:/var/lib/mysql -e = -d mysql:5.6