Docker+DokcerFile 简单命令和简单镜像配置----Tomcat+jdk+centos7
宿主机描述:
docker info (自身的描述)
docker --help
docker images(查看所有镜像)
docker images -a
docker images -q(显示镜像ID)
docker images --digests(镜像说明:备注)
docker images -- digests --no-trunc(查看完整ID)
docker rmi 镜像ID(删除镜像)
搜索:
docker search 镜像名
docker search -s (点赞数) 镜像名
下载:
docker pull 镜像名:标签名版本 (下载镜像)
删除镜像:
docker rmi 镜像ID (删除镜像)
docker rmi -f 镜像ID (删除单个)
docker rmi -f 1镜像ID 2镜像ID(删除多个)
docker rmi -f $(docker images -qa) (批量删除)
容器:
docker run -it --name 重新命名 镜像名
-i (运行容器)
-t(重新分配一个伪终端)
-d(后台运行)
docker ps ( 查看进程 容器)
-a (当前运行容器的和没运行的容器)
-l (查看上一个运行容器)
-n 数字 (输入数字几 就查看几个)
-q 只显示容器ID (一般用来 批处理操作 如批量删除:sudo docker rm $(sudo docker ps -a -q))
--------------------------------------------------------
查看容器日志:
docker logs -t -f --tail 数字 容器ID
--------------------------------------------------------
exit(退出容器)
ctrl+P+Q (后台运行)
docker start 容器ID(启动)
docker restart 容器ID(重启)
docker stop 容器ID(停止)
docker kill 容器ID(强制停止 )
docker rm 容器ID (删除容器)
--------------------------------------------------------
docker top 容器ID (查看容器的进程)
docker inspect 容器ID (查看看容器了内部配置,一般由JSON打印到控制台)
docker attach 容器ID(进入后台容器)
docker exec -it 容器ID /bin/bash(进入内部控制台:/bin/bash为默认落脚点)
------------------------------------------------
从容器内 拷贝数据:
docker cp 容器ID : /tmp/yum.log(容器资源 路径) /root(宿主机 存放路径)
文件删除:-
rm -rf 文件名
打包自己的镜像:
docker conmit -a ="作者" -m=“当前信息” 当前 运行容器ID 名称和版本
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Dockerfile是用来构建Docker镜像的构建文件
保留字
FROM (SCRATCH,镜像源)
MAINTAINER(维护这的姓名和邮箱)
RUN(容器构建是需要运行的命令)
EXPOSE (当前容器对外暴露出的端口)
WORKDIR (指定在穿件容器后,终端默认登录的进来工作目录)
ENV(用来在构建镜像过程中设置环境变量) 如:ENV MY_PHAS /user/data
WORKDIR $MY_PHAS
ADD (将宿主机目录下的文件拷贝镜像且ADD命令会自动处理URL和解压tar压缩包)
COPY()
VOLUME(容器数据卷,用于数据报错和持久化工作)
CMD (指定一个容器启动时 要启动的命令)
实例:
from centos (数据源)
ENV mypath /tmp (配置环境变量应用比较多)
WORKDIR $mypath
RUN yum -y install vim
RUN yum -y install net-tools
EXPOSE 80 (暴露端口)
-----------实例结束---------------------------
CMD (覆盖)
ENTRYPOINT (追加)
ONBUILD (在父类中的 Dockerfile中写 在子类的FROM 写上父类的 镜像名)
ONBUILD RUN echo "father onbuild-------886"
容器数据卷:容器持久化,容器间数据共享
docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名
docker run -it -v /宿主机绝对路径目录:容器内目录:or 镜像名 (待权限的)
DockerFile添加:
dockerfile 是镜像的描述文件 例子:(a.java-----a.class)
-------------------------------------------------------------------------------------------------------
根据镜像启动容器
docker rum --name 自己命名 -d(后台运行) 复制容器名和标签
5.docker run -d -p 8888:8080 tomcat
(-d 后台运行,-p 将主机端口映射到容器的一个端口 主机端口:容器内部端口)
6.查看防火墙转态
service firewalld status
service firewalld stop (关闭防火墙)
-----------------------------------------------自己配置centos7+tomcat+dockerfile的配置脚本------------------------------------------------------
#数据源
FROM centos
#作者信息
MAINTAINER LHN<lhn@qq.com>
#复制并解压
ADD jdk-8u60-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-9.0.30.tar.gz /usr/local/
#安装内部vim
RUN yum -y install vim
#容器落脚点
ENV MYPATH /usr/local
WORKDIR $MYPATH
#环境变量配置
ENV JAVA_HOME /usr/local/jdk1.8.0_60
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.30
ENV CATALINA_BASE /usr/local/apache-tomcat-9.0.30
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
#暴露端口
EXPOSE 8080
CMD /usr/local/apache-tomcat-9.0.30/bin/startup.sh && tail -F /usr/local/apache-tomcat-9.0.30/bin/logs/catalina.sh
Docker+DokcerFile 简单命令和简单镜像配置----Tomcat+jdk+centos7的更多相关文章
- 【Docker】拉取Oracle 11g镜像配置
以下是基于阿里云服务器Centos 7操作 1.拉取Oracle11g镜像 docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_1 ...
- docker拉取oracle11g镜像配置
开始拉取oracle11g镜像 下载过程稍长,镜像大小6.8G(之前拉取过了,所以就不截图了) #docker pull registry.cn-hangzhou.aliyuncs.com/helow ...
- Kafka学习(一)配置及简单命令使用
一. Kafka中的相关概念的介绍 Kafka是一个scala实现的分布式消息中间件,当中涉及到的相关概念例如以下: Kafka中传递的内容称为message(消息),message 是通过topic ...
- Kafka配置及简单命令使用
一. Kafka中的相关概念的介绍 Kafka是一个scala实现的分布式消息中间件,其中涉及到的相关概念如下: Kafka中传递的内容称为message(消息),message 是通过topic(话 ...
- Linux 的简单命令以及在idea中配置码云
Linux 的简单命令: ls(list)功能:列出目录内容 cd(change directory)功能:切换目录 touch 1.txt 在当前目录创建一个文件1.txt clear:清除屏幕 p ...
- docker简单命令
查看镜像 docker images 查看正在使用的容器 docker ps -a 进入容器控制台 docker exec -it 容器ID bash 启动镜像 docker run -it -d.. ...
- Centos7的安装、Docker1.12.3的安装,以及Docker Swarm集群的简单实例
目录 [TOC] 1.环境准备 本文中的案例会有四台机器,他们的Host和IP地址如下 c1 -> 10.0.0.31 c2 -> 10.0.0.32 c3 -> 10.0.0. ...
- Docker初步认识安装和简单实例
前话 问题 开发网站需要搭建服务器环境,FQ官网下载软件包,搭建配置nginx,apache,数据库等.官网没有直接可用的运行版本,担心网络流传的非官方发布软件包不安全还得自行编译官方源码安装,忘记步 ...
- docker之常用命令、自定制镜像、公(私)仓库的上传和下载
一.docker命令 1.参数和命令汇总 1. 参数 Options: --config=~/.docker Location of client config files #客户端配置文件的位置 - ...
随机推荐
- 构建之法组——“别吃错喽”微信小程序评价
此作业要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/9860 基于NABCD评论作品,及改进建议 1.根据(不限于)NABCD评论 ...
- Scala学习系列一
一 scala介绍 Scala是一门以java虚拟机(JVM)为目标运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言. 1) Scala 是一门多范式 (multi-parad ...
- 深入SQL Server 日期和时间的内部存储
在SQL Server的内部存储中,日期和时间不是以字符串的形式存储的,而是使用整数来存储的.使用特定的格式来区分日期部分和时间部分的偏移量,并通过基准日期和基准时间来还原真实的数据. 一,DateT ...
- PHP页面跳转三种实现方法
一.header()函数 header()函数是PHP中进行页面跳转的一种十分简单的方法.header()函数的主要功能是将HTTP协议标头(header)输出到浏览器.header()函数的定义如下 ...
- VS2019提示scanf不安全问题
VS2019提示scanf不安全问题 我们现在学的就是使用scanf()语句进行输入,但是vs2019中却报错显示不安全 首先我先来说一下scanf和scanf-s的区别 scanf()函数是标准C中 ...
- 关于小码哥kylin
技术格言: 用双手改变人生,用代码改变世界! 个人网站:http://www.isainttech.com QQ:56619556 Email:dragonsaint@qq.com 微信:kylin1 ...
- js中跳转的方法
javascript中的location.href有很多种用法,主要如下. self.location.href="/url" 当前页面打开URL页面location.href=& ...
- 硬核! 逛了4年Github ,一口气把我收藏的 Java 开源项目分享给你!
Awsome Java Great Java project on Github(Github 上非常棒的 Java 开源项目). English Version 大家都知道 Github 是一个程序 ...
- ajax加载引起瀑布流布局堆叠
jQuery 瀑布流使用ajax加载数据库图片url ,ajax每次请求到的数据不变时,瀑布流效果没问题. 但当请求到的数据变化时,瀑布流图片格式会重叠 或者相隔很远等等的格式问题,这是由于图片加载是 ...
- 实现一个简单的散列表(HashMap)
下面参考java.util.HashMap<K, V>,写了一个简单的散列表,只实现了其中的put和get方法,使用链接法"碰撞冲突".代码最后,自定义了一个Peopl ...