刚刚接触docker时,觉得很模糊,不知道有什么特别的用处,自从开始开发脉冲云,才正在的了解到docker技术的魅力。 我们只需要将我们想要的功能打包成镜像,然后运行在可以运行docker的主机上,就能使用我们的产品,实现了一次编译,多处运行。 而且docker已经是很成熟的技术,很多开源镜像都可直接使用,安装、卸载也特别方便,只需要简单的了解一些简单的docker命令,及简单的docker基础概念,就能很好的掌握这门技术。 特别是在脉冲云上,镜像就是一个最终的产品,就如安卓的apk一样,是一个可安装部署的产品,通过编译构建获取,并自动保存到脉冲云镜像仓库。 脉冲云将产品和镜像结合起来,通过编译构建代码仓库,完成镜像生成,最后在将镜像仓库里的镜像部署到宿主机上,实现了代码、构建、部署一体化管理。
参考案例脉冲云 下面我们看一个简单的docker在mac上的安装及使用 1、下载 DockerToolbox 安装 2、Docker Quickstart Terminal 可输入docker命令 或者 docker-machine ssh default 可以进入docker虚拟机 3、docker ps 4、docker images 5、案例mysql与wordpress结合 a、docker run -d -p 3306:3306 -v /mnt/sda1/volumes/mysql:/var/lib/mysql --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql b、docker run -d -p 8080:80 --name wordpress --link mysql:mysql wordpress c、运行192.168.99.100:8080即可打开一个刚安装的博客网站。
上面只是简单的案例,就把一个博客网站运行起来了,是不是很简单。其中192.168.99.100是虚拟机ip,视情况而定。 那么,我们还需要了解一些概念。
1、什么是镜像: 镜像含有启动容器所需的文件系统结构及内容,它是对容器运行环境的全盘打包。 2、什么是容器:将镜像启动起来,产生的就是容器。 3、如何生成镜像:编写Dockerfile文件,通过docker build命令来生成。 5、什么是数据卷: 在创建新容器时,可以挂载一个主机上特定的目录到容器。当容器启动时,如果目录存在,会将目录中的内容复制到宿主机对应的文件夹下,当容器内的目录数据有变化时,都会实时拷贝到宿主机中,并且,他们是相互的实时数据同步,这样,每次容器重新启动时,数据就不会丢失了。 这个目录必须是绝对路径,如果宿主机中不存在,将创建一个空文件夹。也可以将单个文件挂载到容器中。 6、如何推拉镜像,我们就拿脉冲云镜像仓库为例: 1)登录脉冲云镜像仓库: docker login maichong.io 回车,按提示输入用户名及密码 2)拉取镜像: docker pull 镜像地址 3)推送镜像 docker push 镜像地址
|