查看docker镜像运行日志_一篇文章带你走进Docker的世界
Docker有啥用Docker 是一个用于开发,交付和运行应用程序的开放平台。Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,您可以用与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟。Docker两个基础概念镜像(Images)Docker镜像是一个只读
Docker有啥用
Docker 是一个用于开发,交付和运行应用程序的开放平台。Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,您可以用与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟。
Docker两个基础概念
镜像(Images)
Docker镜像是一个只读的模板。包含了容器运行时所需要的文件系统和一些参数。镜像是无状态的,也不会改变。镜像是用来创建容器的。你可以使用docker pull命令获取一个别人已创建好的镜像,或者使用dockerbuild来构建一个自己的镜像,如果觉得上面说的不清楚,那你也可以把镜像理解为我们Windows的系统镜像,也就是说一个镜像拥有固定的初始环境,而这个环境可以在任何一个兼容的机器去安装运行。
容器(Containers)
Docker容器就像是一个文件夹,容器中包含了应用运行所需的一切。每个容器都是一个隔离的和安全的应用平台。容器是镜像的一个实例,它是有状态的,而且随时会改变,容器一般是短暂的,其实它跟我们传统意义上的虚拟机的基本概念是一样的,但是有又一些特点与优势,它类似于一个“微系统”,小巧而灵活。
举个例子:
在传统的方式中,我们在Linux系统部署一个Wordpress网站,需要做的步骤是:安装lamp/lnmp环境->配置数据库->下载源码->修改源码配置->完成。
而切换到Docker下是这样的:部署Docker->拉取镜像->创建容器->完成。
从主要步骤来看好像也没有减少多少步骤,但是在实际部署过程中,采用传统方式的话需要做的工作是非常多的,而通过Docker的方式进行启动则变得非常容易,下面演示一下:
使用Docker部署一个wordpress网站
在开始之前我们还需要了解下面几个命令:
- pull #拉取镜像
- run #创建容器
下面进行简单的演示,暂不对相关命令进行详细的讲解,对于Dockcer部署的话下期讲解。
首先查看Docker是否正常运行:
systemctl status docker

然后修改镜像加速地址:
echo -e "{"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]}" > /etc/docker/daemon.json
systemctl daemon-reload
systemctl restart docker

然后通过docker info命令查看镜像加速地址是否成功修改:

到这里Docker的验证就完成了,然后开始拉取镜像。
pull拉取镜像
docker的pull指令其实跟我们的yum install大致的意思是一样的,你也可以把它理解为是在安装一个wordpress应用
docker pull wordpress

拉取wordpress镜像完成
然后继续拉取一个MariaDB镜像:

拉取mariadb镜像
run创建容器
创建一个容器需要用run指令,基本格式如下:
docker run -d ${镜像}
-d :后台运行容器
创建mariadb容器
拉取完成之后自然是创建一个容器(应用)了,按照先后顺序,我们先创建一个数据库容器,命令如下:
docker run -tid -e MYSQL_ROOT_PASSWORD=zuogongjiao mariadb
创建成功会出现一串ID值,如果出现其他提示信息那就是有问题了。
创建成功之后,我们通过下面这个命令获取容器的ID以通过ID进入容器操作(也可以在创建的时候指定容器名)
docker ps

创建容器并查看容器运行ID
得到ID之后,我们通过下面这个命令进入容器
docker exec -ti b /bin/bash
其中,b是ID的第一个字符,也就是无需指定全部的ID值也可以进入一个容器(前提是通过特点字符就能筛选出唯一的容器)
进入容器之后,我们就可以登录并创建数据库了:
mysql -uroot -pzuogongjiao
create database wordpress;
数据库密码是创建容器时指定的:-e MYSQL_ROOT_PASSWORD=zuogongjiao

创建数据库
数据库创建完成之后,可以选择创建一个普通用户用于wordpress的数据管理,也可以直接使用root用户,这里建议使用普通用户去给wordpress使用,所以这时候还需要使用下面的命令创建用户:
grant all privileges on wordpress.* to 'zgj'@'%' identified by 'zuogongjiao';
创建完成之后,我们可以退出数据库使用新的用户登录:
quit;
mysql -uzgj -pzuogongjiao

使用新用户登录数据库
然后查看当前可操作的数据库:
show databases;

查看数据库列表
那么到这步,数据库部分就完成了,下面开始创建wordpress容器:
创建Wordpress容器
创建之前需要先执行下面的命令回到宿主机:
exit

为了便于管理容器,我们可以对数据库容器进行重命名,命令如下:
docker rename elastic_bhaskara db

修改好容器名之后就继续创建wordpress容器,这次可以加上--link参数,具体命令如下:
docker run -tid --name=wordpress --link db:mysql -p 80:80 wordpress
然后如果想看容器的运行情况,可以使用下面的命令查看实时日志:
docker logs -f wordpress

查看容器运行日志
创建容器之后,我们可以直接在浏览器输入宿主机的IP(前提是映射80端口,否则需要IP+端口的方式)进行访问,然后得出这样一个界面:

wordpress安装程序
我们直接点继续,然后就可以填写网站信息了,填写完成之后点击安装wordpress:

填写网站信息
然后就安装完成了:

wordpress安装完成
然后我们再次输入Docker宿主机IP地址进行访问:

这时候就可以看到,我们的网站已经搭建完成了,中途没有出现任何php错误,不兼容之类的环节,可以说非常的顺利,另外Docker作为一个跨平台的工具,可以在Mac、Windows、Linux中随处运行与构建,大大的方便了运维工作。
你认为Docker是否可以在学习或工作中帮助到你,请在评论中说出来吧
更多推荐
所有评论(0)