我们都知道这个 Docker 在部署我们的微服务上,起到了至关重要的作用,但是,很多时候,都是我们直接开发微服务,而不直接的接触 Docker,今天了不起就来说一下这个 Docker 如何快速的安装以及部署。
Docker是一个开源的应用容器引擎,它让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的linux或windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
Docker是由PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,其源代码托管在Github上。它主要用于构建和打包应用及依赖包,以方便其在不同环境中无缝地运行。使用Docker,开发者可以将应用及其环境一同打包到一个可移植的容器中,然后发布到任何流行的操作系统上。这大大简化了应用的部署和管理,提高了开发效率和应用的可移植性。
请注意,Docker并不只是一个应用容器引擎,而是一个完整的平台,它包含了众多的工具和组件,如Docker Client、Docker Daemon、Docker Image和Docker ContAIner等,这些组件帮助实现了Docker的强大功能。
Docker目前已经被广泛使用于云计算、DevOps、软件开发等领域,它大大提高了应用开发和部署的效率,已经成为现代应用部署和管理的标准之一。
所以了不起才说,Docker 是至关重要的一个工具,可以不精通,但是至少得是会用,了解的才可以。
1.安装前置条件
yum install -y yum-utils device-mApper-persistent-data lvm2
2.添加源
yum-config-manager --add-repo http://mirrors.aliyun.com/dockerce/linux/centos/docker-ce.repo
yum makecache fast
3.查看Docker 更新版本
yum list docker-ce --showduplicates | sort -r
4.安装Docker 最新版本
yum -y install docker-ce
安装指定版本:
yum -y install docker-ce-18.09.8
5.开启 Docker 服务
systemctl start docker
systemctl status docker
6.设置阿里云镜像加速器
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["自己的阿里云镜像加速地址"]
}
EOF
systemctl daemon-reload
systemctl restart docker
7.设置docker开启启动服务
systemctl enable docker
这里着重说一下这个 阿里云镜像加速器这块,有很多小伙伴不知道这个是什么,我相信大部分的开发都有注册过阿里云,而这个就需要去阿里云里面去寻找了,方式了不起也给大家科普一下:
登陆自己的账号,搜索镜像加速器,找到获取镜像加速器地址,
点进去就能找到了,虽然很简单,但是很必要呦。
我们通过Docker 命令,则可以知道我们是否安装成功
docker -version
接下来,我们就得来看看如何快速在 Docker 上部署自己的微服务了。
部署微服务肯定是需要有一些前置条件的,比如,使用 Docker 来安装 MySQL,安装 redis,这些, 这些内容都是小意思,了不起就不做赘述了。
我们主要来讲这个如何部署自己的微服务。
我们来给自己的微服务中增加一个 Dockerfile 文件,用来编写脚本内容。我们先来看示例再说这个文件。
FROM openjdk:8
VOLUME /tmp
ADD chuyikeji.jar test.jar
RUN bash -c 'touch /test.jar'
ENTRYPOINT ["JAVA","-Djava.security.egd=file:/dev/./urandom","-jar","/test.jar"]
Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
Dockerfile文件中的指令开头:
我们编写的这块内容,如果翻译起来,其实就很好理解了,我们先指定了基础的镜像,使用 JDK8,然后告诉Docker,我们创建一个 /tmp 的基础卷,然后把这个 jar包 改为 test.jar,最后我们运行这个jar。
当我们吧这个文件编写完成的时候,我们同时还需要准备好我们的 jar,也就是通过 maven 打成的 jar包。
这个时候,我们直接在 Linux 服务器下,创建一个文件夹,然后把我们的 Dockerfile 和 jar 包都上传到这个文件下,接下来,我们就去执行这个 Docker 命令,把我们的 jar 包打成镜像,去让他运行起来。
docker build -t test . 或者 docker build -t xxx .
(xxx) 为Dockerfile中的指定的名称
查看docker 镜像
docker image
启动项目
docker run -p 18081:18081 xxx(test)
至于是否启动成功,那么就得通过命令来看一下日志了。
再使用关键字docker logs <容器id>打印出该容器产生的日志
关于如何使用 Docker 部署自己的微服务,你学会了么?