centos7下docker 部署javaweb
LXC
linux container
百度百科:http://baike.baidu.com/link?url=w_Xy56MN9infb0hfYObib4PlXm-PW02hzTlCLLb1W2dbdQr4AJcrWuxoe9ng9SxYgORKeAQSk0TJOXEL8BnEqK
docker在linux内核容器的基础上提供了更高层的控制工具。
跨主机部署:通过镜像将应用程序和所依赖的文件打包到同一个镜像文件中。
以应用为中心:dockerfile机制大大简化和规范了应用的部署方法。
自动构建:从源码自动构建成镜像。
版本管理:镜像版本管理。
组件重用:任何镜像都可以是基础镜像。
共享:公共镜像,docker registry,docker hub。
工具生态链。
虚拟机
虚拟机是对硬件资源进行划分。
hypervisor
百度百科:http://baike.baidu.com/link?url=32LeXPssolv90-9E2jNHJfSY86zRCTqm6dKcn1ERZfQghBkRTTj84jM-EyvT56RTEvAeCZ9RGgJifa-s0gRY0q
虚拟机独占资源,docker 不同容器之前可以共享部分操作系统资源。
容器
容器=cgroup+namespace+rootfs+容器引擎。
NameSpace:命名空间,主要做访问隔离。(linux内核6中namespace)
Cgroup:control group,控制组,主要做资源控制。 (控制进程对系统资源的试用,包括cpu,内存,block I/O,网络带宽)
rootfs:文件系统隔离。rootfs=Root Fils System 所谓的rootfs,根文件系统,就是那些,能让操作系统正常运行的,文件夹和文件的大集合
容器引擎:生命周期控制。
镜像
docker image 是用来启动容器的只读模板,是容器启动所需的rootfs。
remote-dockerhub.com/namespace/bar:latest
下载jdk和tomcat
下载jdk:http://pan.baidu.com/s/1o8pM5vW
下载tomcat:http://pan.baidu.com/s/1o8pM5vW
安装jdk
yum -y install jdk-7u79-linux-x64.rpm


查找jdk rpm包安装路径
# rpm -qa
# rpm -ql rpm -ql jdk-1.7.0_79-fcs.x86_64
可以看到是安装在 /usr/java 下

安装zip uzip
# yum install zip unzip
安装 tomcat
unzip apache-tomcat-7.0.70.zip -d /usr


mv apache-tomcat-7.0.70.zip tomcat

中途退了出来,重新生成一下镜像
docker ps -a
docker commit 68 zuimao-centos

注意,再启动镜像就是新生成的镜像了
docker run -i -t -v /mnt/soft/:/mnt/soft c9 /bin/bash

可以看到刚才安装的 tomcat 和java 都在。
配置java和tomcat环境变量
vi /etc/profile
加入以下代码
#set java
export JAVA_HOME=/data/jdk
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
#set tomcat
export CATALINA_HOME=/data/tomcat
export CATALINA_BASE=/data/tomcat
退出vi后,让设置立即生效
source /etc/profile

容器启动时启动tomcat
vi /root/run.sh
加入以下代码
#!/bin/sh
退出vi后,为运行脚本添加执行权限

退出当前容器后,重新生成镜像
exit
docker ps -a
启动容器内部的 Tomcat 服务

中途可能会报错,大多数错误是文件夹的位置找不到,新建一个/data目录,把apache和tomcat文件拷进去
确认是否启动成功
docker ps
centos7下docker 部署javaweb的更多相关文章
- centos7下docker的安装教程
Centos7下docker安装教程以及踩过的那些坑 推荐在Centos下安装docker,在windows下安装docker可能会遇到很多的问题,而且docker官方推荐使用linux环境来使用do ...
- Centos7借助docker部署mysql,提供远程链接服务
Centos7 借助docker部署mysql,并提供远程连接服务 安装docker 运行docker 注意安装docker和运行docker的步骤很简单,可以参考我学习docker的笔记 docke ...
- centos7 下zookeeper 部署 单机多实例模式
centos7 下zookeeper 部署 本文参考https://www.linuxidc.com/Linux/2016-09/135052.htm 1.创建/usr/local/zookeeper ...
- centos7 下 安装部署nginx
centos7 下 安装部署nginx 1.nginx安装依赖于三个包,注意安装顺序 a.SSL功能需要openssl库,直接通过yum安装: #yum install openssl b.gzip模 ...
- 关于docker部署javaweb应用的问题
我做了两个镜像,一个mysql,一个tomcat.建完mysql容器之后,在建tomcat的时候用--link把他们链接起来了进tomcat的容器里面 /etc/hosts 也发现了mysql的ip但 ...
- 记录centos7下tomcat部署war包过程
记录centos7下tomcat部署war包过程 1.官网下载tomcat安装包.gz结尾的 2.上传到/usr/local/ ,并解压到tomcat目录下 3.进入tomcat/bin目录,运行./ ...
- Tars | Win10下Docker部署TarsJava(SpringBoot)全过程及踩坑记录
@ 目录 前言 1. 相关环境版本: 坑点一:VMware与Win10 Docker冲突 坑点二:20.版本TarsJava(SpringBoot)依赖文件缺失 2. Docker安装: 坑点三:Do ...
- docker部署Javaweb项目(jdk+tomcat+mysql)
步骤一:在主机下载安装docker,参照Centos7上安装docker 步骤二:下载Linux版本的JDK1.6和Tomcat6.0(其他项目若依赖其他版本的运行环境可选择另外版本下载),通过sec ...
- Windows 下 docker 部署 gitlab ci
一.安装 1. 安装 docker Docker下载 注意:Windows 10 家庭版获取 之前的版本不能直接安装 Docker ,而是需要去安装 Docker Toolbox 我这里安装的是 Do ...
随机推荐
- Eclipse颜色主题插件:Eclipse Color Theme
一个很赞的eclipse插件,可以简单方便地实现eclipse下的代码配色.另外插件作者还专门为此插件做了一个eclipse配色网站,配色多达728个,开发者们也可以在此网站分享自己的配色方案. 插件 ...
- 以对象的方式来访问xml数据表(一)
所有实例代码都是以C#演示—— 在将如何以对象的方式来访问xml数据表之前,我们先来谈谈如何用xml文件作为数据库吧! 平时在开发一些小的应用的时候,需要一个数据库,这个时候虽然可以用SQL serv ...
- C#中的lock关键字有何作用
作为C#的程序员来说,在遇到线程同步的需求时最常用的就是lock关键字.但如何正确并有效地使用lock,却是能否高效地达到同步要求的关键.正因为如此,程序员需要完全理解lock究竟为程序做了什么. 所 ...
- MVC中视图View向控制器传值的方法
MVC中视图View向控制器传值的方法步骤如下: 1.index页面: 页面中只需要一个触发事件的按钮
- 怎样用C#代码屏蔽任务管理器?
这是我在网上找的并多加了一些我自己需要的代码,经过我的测试,可以屏蔽任务管理器,但还有一些瑕疵. 首先,我在vs2012中新建一个项目,选择window下的window窗体应用程序,把窗体form1拉 ...
- flask环境开发搭建
http://blog.csdn.net/chen_jint/article/details/50550636 ========== 因为笔者开发环境是win7pro,那么就以win7pro为例. p ...
- NLog在.NET Core Console Apps中的简单应用
什么是NLog? NLog is a free logging platform for .NET with rich log routing and management capabilities. ...
- Glide
1.简介 在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 Glide 的图片加载库,作者是bumptech.这个库被广泛的运用在google的开源项目中,包括2014年google I/O大会 ...
- ASP.NET MVC 微信公共平台开发之获取用户消息并处理
ASP.NET MVC 微信公共平台开发 获取用户消息并处理 获取用户消息 用户发送的消息是在微信服务器发送的一个HTTP POST请求中包含的,获取用户发送的消息要从POST请求的数据流中获取 微信 ...
- iOS仿京东分类菜单实例实现
在APP开发过程中此功能还是比较常见的模块,左边为菜单展示,右边为菜单下数据的展示,选择不同的菜单右边的数据源进行更新,此实例主要运用到UITableView,UICollectionView,OC谓 ...