Docker学
一、Docker的安装和部署
1、docker依赖linux的内核
如果使用centos7以下的,请先升级linux内核
2、安装
rpm -Uvh http://download./pub/epel/6/i386/epel-release-6-
yum -y install docker-io
3、安装启动
docker version
若输出了 Docker 的版本号,则说明安装成功,我们下面就可以开始使用 Docker 了。
可通过以下命令启动 Docker 服务:service docker start
4、搜索镜像
5、下载镜像
用命令:docker pull centos
此镜像是最小的centos镜像,后续需要自己安装用到的工具
查看已有镜像
6、容器中安装新程序
在镜像里面安装ping程序
在执行apt-get 命令的时候,要带上-y参数。如果不指定-y参数的话,apt-get命令会进入交互模式,需要用户输入命令来进行确认,但在docker环境中是无法响应这种交互的。
正确的命令:$docker run centos/latest apt-get install -y ping
yum -tools 安装ifconfig
另一种方法是,登录到容器中进行安装方法如下:
docker run -i -t -v /root/software/:/mnt/software/ 25c5298b1a36 /bin/bash
这条命令比较长,我们稍微分解一下,其实包含以下三个部分:
docker run <相关参数> <镜像 ID> <初始命令>
其中,相关参数包括:
-i:表示以“交互模式”运行容器
-t:表示容器启动后会进入其命令行
-v:表示需要将本地哪个目录挂载到容器中,格式:-v <宿主机目录>:<容器目录>
假设我们的所有安装程序都放在了宿主机的/root/software/目录下,现在需要将其挂载到容器的/mnt/software/目录下。
需要说明的是,不一定要使用“镜像 ID”,也可以使用“仓库名:标签名”,例如:/docker/centos:centos6。
初始命令表示一旦容器启动,需要运行的命令,此时使用“/bin/bash”,表示什么也不做,只需进入命令行即可。
//安装JDK
tar -zxf /mnt/software/jdk-7u25-linux- -C .
//改路径
mv / jdk/
//安装tomcat
tar -zxf /mnt/software/apache-tomcat- -C .
//改路径
mv apache-tomcat-/ tomcat/
//设置环境变量
export JAVA_HOME=/jdk
export PATH=$PATH:$JAVA_HOME
最后,需要使用source命令,让环境变量生效:
source ~/.bashrc
7、运行容器
编写运行脚本
我们需要编写一个运行脚本,当启动容器时,运行该脚本,启动 Tomcat,具体过程如下:
首先,创建运行脚本:
vi /root/
然后,编辑脚本内容如下:
#!/bin/bash
source ~/.bashrc
sh /opt/tomcat/bin/ run
注意:这里必须先加载环境变量,然后使用 Tomcat 的运行脚本来启动 Tomcat 服务。
最后,为运行脚本添加执行权限:
chmod u+x /root/
创建 Java Web 镜像
使用以下命令,根据某个“容器 ID”来创建一个新的“镜像”:
mit 57c312bbaad1 huangyong/javaweb:
该容器的 ID 是“57c312bbaad1”,所创建的镜像名是“huangyong/javaweb:”,随后可使用镜像来启动 Java Web
命令:
docker run -d -p 58080:8080 --name javaweb huangyong/javaweb: /root/
稍作解释:
-d:表示以“守护模式”执行/root/,此时 Tomcat 控制台不会出现在输出终端上。
-p:表示宿主机与容器的端口映射,此时将容器内部的 8080 端口映射为宿主机的 58080 端口,这样就向外界暴露了 58080 端口,可通过 Docker 网桥来访问容器内部的 8080 端口了。
docker学习笔记 来自淘豆网m.daumloan.com转载请标明出处.