- Docker 安装 - Windows

在OS X和Windows上安装需要使用Boot2Docker,这是一个极小的虚拟机,同时提供了一个包装版本对该虚拟机进行管理;该虚拟机运行一个守护进程,并在OS X和Windows上提供了一个本地的Docker守护进程;Docker的客户端工具docker可以作为这些平台的原生程序安装,并连接到Boot2Docker虚拟机中运行的Docker守护进程;

>> Docker Windows中下载、安装、配置

  • Docker官网:https://www.docker.com/get-docker,点开,往下拉:
    这里写图片描述

  • 选择DockerToolbox下载:
    这里写图片描述

  • 双击安装:
    这里写图片描述

  • 全选,下一步:
    这里写图片描述

  • 选前三个,下一步:
    这里写图片描述

  • 安装三个
    这里写图片描述
    这里写图片描述
    这里写图片描述

  • finish
    这里写图片描述

  • 桌面出现三个图标:
    这里写图片描述

  • 验证安装:
    双击“Docker Quickstart Terminal”;启动一个终端窗口,自动执行脚本获取boot2docker.iso到本地路径“C:\Users\zhaobaolong\.docker\machine\machines\default”

  • 验证出错:
    这里写图片描述

  • 重启电脑,按F1 ,选择 security --> intel Virtualization Technology --> enable

  • 双击ocker Quickstart Terminal,成功
    这里写图片描述

  • $ docker run hello-world
    这里写图片描述

参考链接: http://blog.csdn.net/qq2712193/article/details/54576313


>> Docker加速镜像拉取

使用国内仓库镜像服务器来进行镜像的拉取:

  • 国内DaoCloud镜像地址:https://www.daocloud.io/
  • 打开链接,注册登录,点击加速器,复制Windows下的地址;
  • 修改:/etc/default/docker
  • 命令行下 vi进入目录:vi /etc/default/docker
  • 添加:DOCKER_OPTS="--registry-mirror="http://ba08868d.m.daocloud.io"(第二步复制的地址)
  • 重启docker守护进程

>> Docker运行nginx镜像

从仓库拉取镜像:(library表示镜像是从docker官网镜像中心同步过来的),点开复制下载地址到命令行执行
这里写图片描述
docker images列出本地镜像
docker ps列出启动的容器
docker pull hub.c.163.com/library/nginx:latest拉取nginx镜像
docker exec -it name/id进入容器内部,exit退出内部;

这里写图片描述
注意: 浏览器访问localhost:port时,无法访问到容器端口对应的服务,

解决Windows下无法对docker容器进行端口映射的问题:

在安装了一个Windows下安装了docker,并尝试在其中运行Nginx、owncloud等服务,但映射完毕之后,在主机的浏览器中,打开localhost:port无法访问对应的服务。

The reason you’re having this, is because on Linux, the docker daemon (and your containers)
 run on the Linux machine itself, so “localhost” is also the host that the container
  is running on, and the ports are mapped to.

 so only the docker client is running on your Windows machine, 
 but the daemon (and your containers) run in a VirtualBox Virtual Machine, that runs Linux.

原来,docker是运行在Linux上的,在Windows中运行docker,实际上还是在Windows下先安装了一个Linux环境,然后在这个系统中运行的docker。也就是说,服务中使用的localhost指的是这个Linux环境的地址,而不是我们的宿主环境Windows。我们可以通过命令docker-machine ip default找到这个Linux的ip地址,一般情况下这个地址是192.168.99.100,然后在Windows的浏览器中,输入这个地址,加上服务的端口即可启用了。


>> 制作自己的镜像-Jpress

  • dockerfile文件:告诉docker怎样制作自己的镜像,制作镜像的每一步操作分别是什么;

  • docker build :写好dockerfile之后,使用docker build命令来执行dockerfile里面描述的每一件事情,最终构建出docker镜像;

  • Jpress :http://jpress.io/ 使用一个开源的Javaweb应用,在此基础上制作自己的镜像;

>> 制作步骤:

  • 从官网下载Jpress:http://jpress.io/,放在与dockerfile文件一个文件夹下就可以;
    这里写图片描述

  • https://github.com/JpressProjects/jpress/tree/alpha/wars
    这里写图片描述
    这里写图片描述

  • 从网易镜像中心下载Tomcat镜像作为Javaweb程序的基础镜像;
    https://c.163.com/hub#/m/repository/?repoId=3105,下载Docker版本;因为Tomcat的运行需要用到Java,soTomcat这个镜像 是包含JDK的;
    这里写图片描述
    这里写图片描述
    这里写图片描述

  • mkdir dockerfile存放目录

  • cd 目录

  • vi dockerfile 进入vi (visual interface屏幕编辑器,Linux系统常用的文本编辑器),编辑dockerfile文件内容:

  • from :指定镜像继承自哪个基础镜像(基础镜像就相当于java中的基础类);因为程序是Javaweb端的程序,所以就需要用到Tomcat,so从Tomcat作为基础镜像开始自己的镜像制作;

  • maintainer:镜像的所有者;包括所有者的名字,联系方式等;(可以不写)

  • copy:将本地一个文件(Javaweb的war包)拷贝到Tomcat的webAPP文件夹下,Tomcat启动的时候就可以识别这个web应用;或者copy一个目录;

这里写图片描述
这里写图片描述

这里写图片描述

from hub.c.163.com/library/tomcat

MAINTAINER zhangxuejiao 13116052056@163.co

COPY jpress.war /usr/local/tomcat/webapps

编辑完vi 按Esc --> :wq --> 回车;/usr/local/tomcat


>>运行自己的镜像-Jpress

  • Tomcat也是一个服务,需要对外提供端口;
    -p在本机的端口指定一个8888,Tomcat的默认端口8080,后面加镜像的名字;
    这里写图片描述

  • Tomcat容器启动成功,里面的Jpress启动成功:
    这里写图片描述

  • 但是使用Jpress还需使用数据库,本地没有MySQL数据库,也不想安装,可以在docker里面运行一个MySQL:
    (1)在镜像中心搜索MySQL,复制地址,命令行pull下载下来;然后运行
    https://c.163.com/hub#/m/repository/?repoId=2955
    命令行输入:docker pull hub.c.163.com/library/mysql:latest
    这里写图片描述

  • 运行MySQLdocker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=000000
    -e MYSQL_DATABASE=jpress hub.c.163.com/library/mysql:latest
    这里写图片描述

  • 在浏览器内输入网址,点击下一步:
    这里写图片描述

  • 填写好数据库连接信息之后点击下一步:
    这里写图片描述

  • 重启web容器:
    这里写图片描述
    这里写图片描述

  • 重启web容器之后,页面自动跳转:
    这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值