Docker安装与入门

简介: Docker学习Docker的理由:        最近在部署系统时,发现公司使用的是docker进行部署的,刚开始用的时候不太顺手,感觉很麻烦,先是要修改版本,然后在重新创建镜像,到最后重启容器,可是后来越用感觉越来方便,理由有3:①使用Docker部署能够将原来的版本进行保存,并不需要你手动进行备份,当然你也可以删除。
Docker

学习Docker的理由:

        最近在部署系统时,发现公司使用的是docker进行部署的,刚开始用的时候不太顺手,感觉很麻烦,先是要修改版本,然后在重新创建镜像,到最后重启容器,可是后来越用感觉越来方便,理由有3:

①使用Docker部署能够将原来的版本进行保存,并不需要你手动进行备份,当然你也可以删除。

②使用docker能更快的启动你的系统,原因后面介绍。

③使用docker课题加快你的开发效率,在一台机器上部署好,可以轻松到移植到任何一台服务器上,只要你的镜像没问题;

综合上面几个理由,我觉得有必要进行docker的入门学习

一、Docker介绍

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台

二、Docker的几个基本概念

        如果之前有了解过docker的想必都应该知道镜像、容器、仓库的关键词,这个三个对于没接触过docker的是有一点难理解的,这三个到底是什么关系呢,又都有什么用处呢,接下来我就用"装系统"的过程来给大家分享下我的理解:

镜像:大家应该都有过装系统的经验,装系统之前,我们肯定要从msdn(下载系统的一个官网)上下载我们需要的系统,例如windows_7_ultimate_x64.iso,这个我们都称它为win7镜像(就不分为纯净版和ghost版了),所以docker里面的镜像也就是我们即将用来装系统的镜像。

容器:容器有可能不好理解,但是我与操作系统关联上就好理解了,在前面我们已经拿到win7镜像了,但是这个镜像是放在我们的U盘里面,我们并不能用啊,我们得把他装到电脑上面啊,等我们把系统装好,我们就可以开机进入我们的win7操作系统了,这里的进入操作系统就等价与我们进入了我们的docker容器中,这个容器就是我们装好后的操作系统。

仓库:前面说的msdn官网其实就是一个系统仓库(系统的集合),docker的仓库指的就是镜像的集合,存放我们创建的镜像。

            三个概念,到这里已经讲清楚了,我们开始使用docker为我们快速部署吧!

三、Docker的使用

环境:Centos7.0

Ⅰ.安装docker

        我是直接采用阿里云提供的docker的安装方法,并且使用它的镜像加速(docker官网镜像下载太慢)

docker的安装

Ⅱ.配置镜像加速

    ①获取阿里云镜像加速地址:https://dev.aliyun.com/,进入注册,然后再点击该链接进入下页


再点击管理中心,进入如下页面:点击镜像加速,按照以下步骤进行添加配置,重启docker

配置镜像加速

Ⅲ.docker的常用命令:

       ① 获取需要的镜像:docker pull 镜像名

        ②查看已pull下来的镜像:docker images

        ②创建容器并启动:docker run  -d[守护状态运行] 镜像名,返回容器的ID(先检查本地有没有该镜像,没有则先pull下来)

        ③查看容器的信息:docker ps

        ④进入容器内部:docker exec -it 容器ID sh

四、动手实践案例:利用docker部署我们的web项目

    Ⅰ.首先将tomcat镜像pull下来,命令如下:

                docker pull tomcat

    Ⅱ.将我们项目的war包放到/opt 下面

    Ⅲ.配置dockerfile文件

               因为我们要部署自己的项目到容器中,所以我们通过编辑dockerfile文件的方式,修改镜像来达到此目的,具体如下:

       指令解释:

from tomcat:指令from是选择你要用到的镜像,这里是一个装好了tomcat的一个镜像,就相当于一个预装office的操作系统镜像

MAINTAINER 884454075@qq.com  指定创建人的邮箱

COPY TestDocker.war /usr/local/tomcat/webapps:COPY指令,复制外部文件到镜像中,这里很好看懂,就是将我们将要部署的war拷贝到镜像中,之后我们启动的tomcat容器中就会部署有我们的项目了

opt目录下的内容

   Ⅳ.创建镜像

        docker build -t tomcat:v1.0 .

解释:-t  指定镜像名  .表示dockerfile在当前目录下

Ⅴ.启动容器

        docker run -p 8080:8080 tomcat:v1.0

解释:-p  外端口:内端口  镜像名

  Ⅵ.测试

成功

感谢大家能看到这里,文中讲的不正确的地方,欢迎在下方留言,我会及时修正。

欢迎大家关注我的公众号,会不定时更新技术干货。


乐哉码农
相关文章
|
9月前
|
关系型数据库 应用服务中间件 nginx
Docker一键安装中间件(RocketMq、Nginx、MySql、Minio、Jenkins、Redis)
本系列脚本提供RocketMQ、Nginx、MySQL、MinIO、Jenkins和Redis的Docker一键安装与配置方案,适用于快速部署微服务基础环境。
|
6月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
718 51
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
8月前
|
运维 Kubernetes 开发者
解锁现代开发与部署:Docker入门指南
解锁现代开发与部署:Docker入门指南
271 100
|
7月前
|
关系型数据库 数据库 PostgreSQL
docker 安装 Postgres 17.6
本文介绍如何通过Docker安装和配置PostgreSQL 17.6。内容包括拉取镜像、导出配置文件、运行容器并挂载数据与配置文件目录,以及进入容器使用psql操作数据库的完整步骤,便于持久化管理和自定义配置。
1094 4
docker 安装 Postgres 17.6
|
6月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
736 6
|
6月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
555 2
|
12月前
|
存储 安全 C++
Odoo 安装方式选择:源码安装 vs Docker
Odoo部署常采用源码编译或Docker容器化,但分别面临依赖复杂、版本风险和服务化难题,以及镜像臃肿和扩展受限的问题。Websoft9提出混合方案,融合两者优势:通过智能环境适配、三阶段部署流程(环境预检、混合模式选择、持久化配置)及声明式YAML配置,实现高效、灵活的双模运行时。此方案显著降低依赖冲突解决时间(从83分钟至0),生产环境构建耗时缩短至8分钟,并达100% CVE漏洞修复率,适合ERP定制开发与规模化部署的企业需求。
|
9月前
|
NoSQL 安全 Redis
Docker Compose :从入门到企业级部署
Docker Compose 是用于定义和运行多容器应用的工具,支持服务、网络和卷三大核心要素。通过简洁的 YAML 文件,可实现应用的快速部署与管理,适用于开发、测试及生产环境。
708 1
|
10月前
|
存储 NoSQL MongoDB
Docker中安装MongoDB并配置数据、日志、配置文件持久化。
现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。
1151 4
下一篇
开通oss服务