这篇文章不是介绍DOCKER是什么,也不是阐述DOCKER的核心:镜像/容器和仓库之间的关系,它只是一篇让刚刚接触DOCKER的初学者,在没有完全了解DOCKER是什么之前,也能尽快的在Linux系统下面通过DOCKER来搭建一个LAMP环境,这是其一;其二才是我写这篇文章的初心,我觉得很多事情在你没有弄明白之前,从操作入手比一上来就研究各种原理相对来说会更自然,也更容易。
下面我们来讲一下如何在LINUX系统下面搭建LAMP(Linux+Apache+Mysql+Php)环境,我们可以想象一下通过虚拟机构建环境的过程;虚拟机搭建构造类似环境,它首先需要个虚拟机,然后在虚拟机里面通过镜像装一个操作系统,再在操作系统里面配置各种环境和应用程序;那DOCKER也差不多,DOCKER就好比虚拟机+镜像系统,DOCKER里面的镜像文件就好比虚拟机需要配置的各种环境,那镜像文件从哪里来呢?从DOCKER仓库。所以搭建一个LAMP环境,只需要先安装DOCKER,再从仓库去下载一个LAMP镜像文件,下载完之后,在DOCKER里面再去创建一个容器,把镜像放进去就可以了。
下面我们按照步骤一步一步来操作(我这边用的是CentOS7.5):
第一步,安装DOCKER;直接使用命令:
$ yum install docker
此命令的作用就是下载最新的DOCKER,下载完成之后,系统会提示complete;我们可以通过命令查看一下DOCKER的版本(顺便验证一下是否下载成功),只要安装成功,命令执行完就会有对应的DOCKER版本信息:
$ docker -v
第二步,安装好DOCKER之后,我们要把DOCKER启动起来,命令如下:
$ systemctl start docker.service(启动docker)
$ sytemctl enable docker.service/docker(启动开机启动,都执行一下。)
$ systemctl status docker.service(查看docker是否运行)
第三步,下载镜像文件;
如果直接从国外仓库(Docker Hub)去拉取(pull)镜像,直接执行以下命令就可以了:
$ docker pull 镜像名称
但是考虑到直接从国外镜像仓库拉取(pull)载镜像会很慢很慢,所以建议大家从国内供应商提供的镜像源去拉取(pull),具体方法就是配置” /etc/docker/daemon.json”这个文件;通过命令打开daemon.json文件,写入图片中的内容保存就可以了:
$ vi /etc/docker/daemon.json
第四步,拉取(pull)镜像文件之前,大家可以通过以下命令去拉取(pull)哪些star数量靠前的镜像文件,因为star越多,相对来说会更稳定更好用。因为我们要搭建LAMP,所以镜像文件名称制定LAMP就好了。
$ docker search -s 10 lamp(列取前10位的镜像)
第五步,拉取(pull)镜像 “http://docker.io/tutum/lamp(可以根据自己的需求来选取),这一步时间会比较长,做好准备,哈哈,要不你会以为它卡了。
$ docker pull http://docker.io/tutum/lamp
镜像拉取成功之后,我们再通过命令查看一下,是否存在刚才拉取的镜像:
$ docker images
第六步,创建容器,把镜像装起来,命令如下:
$ docker run -d --name=lamp -p 8080:80 -p 3306:3306 http://docker.io/tutum/lamp
run是创建容器的命令
-d 是后台运行容器,并返回容器ID
--name=lamp是指定容器名称为lamp
-p 8080:80 是把宿主机端口8080映射到容器80端口(WEB网站端口)
-P 3306:3306 把宿主机端口3306映射到容器3306端口(数据库端口)
http://docker.io/tutum/lamp 镜像文件名
到这一步容器就已经创建好了,也就是环境已经构建好了,我们用命令查看一下容器:
$ docker container ls
容器存在,此时通过以下命令进入容器:
$ docker exec -it lamp /bin/bash
$ ll(查看容器有哪些文件,是不是感觉就是小型的LINUXOS呢。。。。)
最后一步,访问网站测试一下是否配置成功:
公网IP:8080/index.php
这样一个LAMP环境就搭建好了,是不是非常简单!希望大家按照这个步骤走下来,之前对DOCKER的不了解,能有一种拨开云雾见月明的感觉。
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。【保证100%免费】
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。