安装完Docker之后,我们就可以简单的使用Docker,来体会Docker的用处。

首先看下Docker的常用命令,都是我在实用Docker的时候用到的命令:

docker常用命令:

$ docker images //查看所有的镜像

           $ docker ps -a //查看所有的容器

           $ docker build -t docker_name .//用Dockerfile创建一个名字叫docker_name的镜像

           $ docker serach php //查看Docker hub上的关于php的镜像

           $ docker pull docker_name//拉取Docker hub的名字为docker_name的镜像

           $ docker run -t -i ubuntu:14.04  /bin/bash//用ubuntu:14.04创建一个容器并启动一个bash终端允许用户进行交互

           $ docker run -p 9000:9000 --name xx ....//将容器的9000端口映射到主机的9000端口,命名容器为xx

           $ docker run -d//在后台运行

           $ docker start web1//启动名称为web1的容器

           $ docker stop web1//终止名称为web1的容器

           $ docker rm containerID 删除ID为contiainerID的容器

           $ dcoker rename web1 web2 将web1的名字重新命名为web2

$ docker build -t image_name -f /usr/documents

//用/usr/documents的路径下的docker_file来创建一个名字叫image_name的镜像

使用实例一:

使用DockerFile构建镜像,创建一个Apache服务器的应用程序

新建一个文件夹DockerTest,在里面建立一个DockerFile文件,

这里注意DockerFile必须是严格的DockerFile,不能写成Dockerfile或者Docker_File。在DockerFile里面写上:

# Version 0.1

# 基础镜像

FROM ubuntu:latest

# 维护者信息

MAINTAINER shiyanlou@shiyanlou.com

# 镜像操作命令

RUN apt-get -yqq update && apt-get install -yqq apache2 && apt-get clean

# 容器启动命令

CMD ["/usr/sbin/apache2ctl", "-D", “FOREGROUND"]

用上面的命令,创建一个镜像:

等待下载完成,利用镜像文件建立一个容器:

这样在名字为web1的容器,就建好了,default虚拟机的80端口,映射到了容器的80端口。这个时候可以访问虚拟机的80端口,虚拟机的ip地址 可以docker-machine ip default命令查看

使用实例二:

使用Docker Hub上的官方镜像,安装一个PHP加apache的运行环境。

可以使用docker search php-apache命令,也可以直接登录Docker Hub的官网去找。

我用的是这个镜像。用docker pull eboraas/apache-php 拉取镜像,等待下载完成后,用docker images查看镜像,可以看到自己的下载的镜像。
   然后用镜像,建立一个容器就可以了。这里,建立一个容器之后,怎么开发呢。通常,我们有两种方式,一个设置容器用交互式的界面,这样可以到容器里面去开发。还有一个是用文件夹挂载,把本机的文件夹挂载到apache-php容器的/var/www/html中,这样就可以本机中开发了。
  具体命令:
   docker run -p 8080:80 -p 8443:443 -v /home/jdoe/mysite/:/var/www/html -d eboraas/apache-php

-v /home/jode/mysite/   :  /var/www/html 就是把本地的home/jode/mysite挂载到/var/www/html中。
  在mysite中新建一个,mysite.php
  <?php





echo "hello,world"

 ?>


 然后浏览器中访问192.168.99.100:8080/mysite 这个ip地址是我的default的虚拟机的ip地址

Docker 学习应用篇之三: Docker的简单实用的更多相关文章

  1. [转]Docker学习之四:使用docker安装mysql

    本文转自:https://blog.csdn.net/qq_19348391/article/details/82998391 Docker学习之一:注册Docker Hub账号 Docker学习之二 ...

  2. Docker学习(二)docker镜像操作

    上一篇:docker学习(一)在centos7上安装docker 列出所有docker镜像 docker images 拉取镜像 docker pull 镜像名 我这里一Tomact为例 首先在Doc ...

  3. Docker学习(三)docker容器操作

    上一篇:Docker学习(二)docker镜像操作 容器是基于镜像创建的,说白了把一个镜像运行起来就是容器 查看容器 docker ps 上面什么也没有,因为我们没有正在运行的容器,下面我门启动一个容 ...

  4. Docker学习(十)Docker容器编排 Docker-compose

    Docker学习(十)Docker容器编排 Docker-compose 标签(空格分隔): docker 容器编排是什么 应用一般由单独容器化的组件组成,须按照一定顺序在网络级别进行组织,以使其能够 ...

  5. Docker学习(十一)Docker系列结束-新的开始K8S

    Docker学习(十一)Docker系列结束-新的开始K8S 标签(空格分隔): docke k8s Docker系列结束 上一篇讲到使用docker官方提供的容器编排工具docker-compose ...

  6. Docker 学习应用篇之一: 初识Docker

    Docker 自从2013年以来就非常的火热,无论是从github上的代码活跃度,还是Redhat在RHE6.5中集成对Docker的支持,等等.第一次接触Docker,还是老师给我们介绍的. 1.初 ...

  7. Docker 学习应用篇三:使用docker搭建的环境,安装thinksns

    Thinksns 是一个开源的社交网站,因为目前的项目需要用到这个,所以就下载一个安装试试看. 之前在windows上用了wamp,安装的很顺利.但是项目是要部署到linux上的.于是我便用了Dock ...

  8. Docker 学习应用篇之二: Docker的介绍和安装

    之前说过Docker的好处,Docker可以集装箱化的部署应用程序.那么Docker是通过什么实现的呢.要理解Docker内部构建,需要先理解Docker的四种部件 1)images:镜像,docke ...

  9. Docker学习一篇就够了

    Docker 1.简介 Docker是一个开源的应用容器引擎:是一个轻量级容器技术: Docker支持将软件编译成一个镜像:然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像 ...

随机推荐

  1. springboot+swagger2案例

    1.pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www ...

  2. git链接github仓库

    配置Git 我们先在电脑硬盘里找一块地方存放本地仓库,比如我们把本地仓库建立在C:\MyRepository\1ke_test文件夹下 进入1ke_test文件夹 鼠标右键操作如下步骤: 1)在本地仓 ...

  3. AndroidManifest详解

    一,重要性AndroidManifest.xml是Android应用程序中最重要的文件之一.它是Android程序的全局配置文件,是每个 android程序中必须的文件.它位于我们开发的应用程序的根目 ...

  4. 5 -- Hibernate的基本用法 --1 1 对象/关系数据库映射(ORM)

    ORM的全称是Object/Relation Mapping ,即对象/关系数据库映射.ORM可理解成一种规范,它概述了这类框架的基本特征:完成面向对象的编程语言到关系数据库的映射.当ORM框架完成映 ...

  5. ios开发之--[_NSInlineData objectForKeyedSubscript:]

    reason: '-[_NSInlineData objectForKeyedSubscript:]: unrecognized selector sent to instance 0x7fa2049 ...

  6. psutil的使用

    psutil是Python中广泛使用的开源项目,其提供了非常多的便利函数来获取操作系统的信息. 此外,还提供了许多命令行工具提供的功能,如ps,top,kill.free,iostat,iotop,p ...

  7. 为啥RESTFULL如此重要?

    为啥RESTFULL如此重要? 2014-6-3 20:13| 发布者: admin| 查看: 57| 评论: 0|来自: java365 摘要: 本文我们将讨论REST,它定义了一组体系架构原则,您 ...

  8. c语言中的内存分配malloc、alloca、calloc、malloc、free、realloc、sbr

    C语言跟内存分配方式 (1) 从静态存储区域分配.内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量,static变量. (2) 在栈上创建.在执行函数时,函数内局部变 ...

  9. 【Python3】 使用django 2.0 + python3.6.4 创建应用

    python版本:3.6.4 django版本:2.0 1 创建应用 输入命令 python manage.py startapp blog 2 在项目目录创建 templates文件夹 用于存放我们 ...

  10. 例说hg(五)————创建repository

    本文由博主原创,转载请注明出处(保留此处和链接): IT人生(http://blog.csdn.net/robinblog/article/details/17933747) 有很多网站提供了免费的M ...