Docker(一)

(一)什么是Docker

先说说我的理解吧,Docker英文的意思是码头工人,但Docker更被认为是集装箱。docker是应用程序的宿主。Docker是虚拟环境。应用程序可以在docker中运行。应用程序是工作在一个虚拟的环境里的,在这个环境里,进程ID、文件系统、网络等等,全都是“假象”,都是Docker通过某种方式“捏造”出来的。像个集装箱,程序只知道傻乎乎地在其中运行,并不知道自己已经处在Matrix之中了。通过配置不同的镜像,配置多套不通的环境,不用担心应用之间会有冲突或者环境的影响。Docker的启动速度都非常高效。

(二)如何安装Docker

我的服务器版本是ubuntu,就记录下吧。


linux发行版本
  1. Docker 要求 Ubuntu 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的 Ubuntu 版本是否支持 Docker。
  • uname -r
  1. 安装最新版本Docker
  • wget -qO- https://get.docker.com/ | sh
  • 可通过docker --version查看版本
  1. 启动docker 后台服务
    service docker start

(三)镜像与容器

  1. 拉取镜像
    docker pull centos:7.2.1511
  2. 查看镜像
    docker images
  3. 创建并运行容器
  • docker run -itd --name web centos:7.2.1511 /bin/bash
    • -i:让容器的标准输入保持打开
    • -t:让docker分配一个伪终端并绑定到容器的标准输入上
    • -d:让容器在后台运行
  1. 当使用exit退出容器时如果没有使用-d,那么容器就停止了。使用了-d,可以使用docker exec -it 容器ID /bin/bash
    在后台运行

(四)安装jdk和tomcat

1.上传tomcat和jdk(什么版本都行,本例子是jdk1.8和tomcat7)

  • 创建/usr/local/java/文件夹
  • 使用ftp上传把tomcat和jdk到/usr/local/java/(当然也可以你是喜欢的文件夹)


    文件
  1. 复制到dcker容器中
    命令:docker cp host_path containerID:container_path
    实例:docker cp /usr/local/java 1436737c835c: /usr/local/
  2. 解压文件
    tar -zxvf apache-tomcat-7.0.91.tar.gz
    tar -zxvf jdk-8u131-linux-x64.tar.gz
  3. 配置jdk环境变量
  • echo -e "\n\nexport JAVA_HOME=/usr/loacl/java/jdk-8u131-linux-x64" | tee -a /etc/profile
  • echo -e "\nexport PATH=\$PATH:\$JAVA_HOME/bin" | tee -a /etc/profile
  • source /etc/profile
  1. docker commit生成一个镜像,以便后续使用
    命令:docker commit -a '作者' -m '说明' 容器id 镜像名:镜像的标签
    实例:docker commit -a 'jarworker' -m 'web' 1436737c835c jarworker:least

    result

  2. 启动tomcat后可以在容器中运行,但无法在宿主机访问。这时候配置容器的连接
    命令:docker run -itd --name 容器名-p 映射宿主机端口:docker中tomcat端口 镜像名:镜像的标签 /bin/bash
    实例:docker run -itd --name web -p 80:8080 jarworker:least /bin/bash

  • -p:将容器内部使用的网络端口映射到我们使用的主机上。


    lucky
  • 红圈说明连接成功。

6.在容器中启动tomcat

good

先到这吧!!!辛苦了。。。