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<[email protected]>

#复制并解压

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

 

原文地址:https://www.cnblogs.com/A-lin-1039/p/12077412.html

时间: 2024-08-28 13:03:11

Docker+DokcerFile 简单命令和简单镜像配置----Tomcat+jdk+centos7的相关文章

liunx 配置tomcat JDK

环境:centos6.5 64位 1. 首先查看系统有没有自带jdk 使用命令 java -version 如果有会出现提示 . 2. 首先下载jdk 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html 我下载的是 jdk-7u75-linux-i586.rpm(64位的) 3.使用命令rpm -ivh jdk-6u11-linux-i586-rpm(注意这个需要有root权限 如果

lnmp环境安装配置tomcat + jdk

安装jdk的版本 1.8● 各种版本可在官网http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 页面下载● tar -zxvf jdk-8u171-linux-x64.tar.gz //解压包● mv jdk1.8.0_171 /usr/local/jdk1.8 //移动重命名文件目录● vim /etc/profile //最后面增加(这个环境变量文件 修改)JAVA_HOME=

Kafka学习(一)配置及简单命令使用

一. Kafka中的相关概念的介绍 Kafka是一个scala实现的分布式消息中间件,其中涉及到的相关概念如下: Kafka中传递的内容称为message(消息),message 是通过topic(话题)进行分组的 topic 和message 的关系是一对多的关系 我们称发布message的进程为producer ,就是说producer生成<topic->message>对然后 丢进kafka集群 相对应的称订阅topic处理对应message的进程为consumer Kafka集群

Docker基础命令详解——镜像及容器操作

Docker基础命令详解--镜像及容器操作 前言 ? 上篇文章介绍了有关Docker的基础与Linux下docker的安装,本文主要讲解安装docker后的基础使用方法以及命令的介绍,主要是docker镜像操作及容器操作命令. ? 当然,docker的相关命令非常多,可以使用docker help命令查看对应目录以及相关提示命令. Docker镜像操作命令 [[email protected] ~]# which docker /usr/bin/docker 1.镜像搜索:docker sear

Admin(一)——Linux简介与简单命令

一.RHEL 与CentOS的区别 RHEL是红帽公司提供的商业版Linux系统,若要获取DVD镜像.安全更新等技术服务支持,一般需要付费订阅:不过构成RHEL系统的各种软件包都是基于GPL开源协议免费发布的. CentOS是一个社区性质的Linux系统,相当于RHEL的一个克隆版本,它采用了构成RHEL系统的各种软件包重新组装.开发而成,并且在此过程中做了一些优化.必要的Bug修复:CentOS系统的版本会稍晚于同版本的RHEL系统发布,其构成.管理方式与同版本的RHEL系统几乎一模一样,而且

Apache 的搭建及vim的简单命令

一. vim 简单命令 pwd     当前路径 ls    当前路径所有目录 cd  目录地址   跳转到指定目录 /xxx  查找xxx x 删除当前字符 n 执行上一次查找 二.为什么使用apache 服务器 能够有一个测试的服务器,不是所有的特殊网络服务都能找到免费的!,有些特殊的服务器功能,Apache都能很好的支持 三.安装配置apache 服务器 1.给自己的电脑设置成服务器 2.电脑设置密码,要不别人也可以访问我的电脑. 3.显示mac隐藏文件  defaults write c

利用docker镜像配置mysql集群+nextcloud集群+haproxy负载均衡

测试环境: docker xampp 9.1.1 ubuntu 16.0.4 hadoop 2.7 jdk 1.8 一.配置mysql集群 通过docker拉取mysql集群镜像创建容器,包括ndb_mgm(管理节点).ndb_mgmd01.ndbd01(数据节点1).ndbd02(数据节点2).mysqld01(sql节点1).mysqld02(sql节点2) docker run -itd --name ndb_mgmd01 --net=scg --ip 192.166.0.2 -v /ro

adb简单命令及monkey使用

Ⅰ 配置好android sdk环境变量之后,将android手机连接到电脑上,进行一些adb的简单命令的操作. adb,安卓调试桥,android   sdk的一个工具.直接操作管理安卓模拟器或者真实的安卓设备. 借助adb工具,管理设备或手机模拟器的状态,进行很多手机操作,如安装软件.系统升级.运行shell命令等等. 其实简而言说,adb就是连接Android手机与PC端的桥梁,可以让用户在电脑上对手机进行全面的操作. 常用命令: 1.adb  install   path(电脑sdk的命

10、《每天5分钟玩转Docker容器技术》学习-Docker命令之本地镜像管理

a) Docker images 命令 docker images : 列出本地镜像. docker images [OPTIONS] [REPOSITORY[:TAG]] -a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层): --digests :显示镜像的摘要信息: -f :显示满足条件的镜像: --format :指定返回值的模板文件: --no-trunc :显示完整的镜像信息: -q :只显示镜像ID. l 实例 查看本地镜像列表. 列出本地镜像中REPOSITO