Docker简单操作及软件部署

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: Docker简单操作及软件部署


我们写代码会接触到好几个环境: 开发环境、测试环境、测试环境


不知道大家有没有遇到过这种情况,一个代码在自己电脑跑的好好的,但是在放到别人的电脑上跑的时候忽然就报错了,究其根本只能是因为环境不匹配导致的,但如何解决这种因为环境导致的问题呢?是不是可以在迁移的过程中,把环境也迁移过去,Docker就是为此而生的

Docker是一个开源的应用容器引擎

Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上。

容器是完全使用沙箱机制,相互隔离

容器性能开销极低

Docker安装

第一步:先查看centsos版本
Docker要求CentOS系统的内核版本高于3.10


如果不满足的话可以升级软件包及内核
yum updat

第二步:安装Docker


第三步: 启动Docker


第四步:开机启动docker


第五步:停止docker



Docker架构


镜像(Image) : Docker镜像(lmage),就相当于是—个root文件系统。比如官方镜像ubuntu:16.04就包,含了完整的一套Ubuntu16.04最小系统的root文件系统。

容器(Container) :镜像(lmage)和容器(Container)的关系,就像是面向对象程序设计中的类和对象一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

仓库(Repository) :仓库可看成一个代码控制中心,用来保存镜像。

配置Docker镜像加速器


docker命令

docker服务相关的命令

启动docker

查看docker状态


停止docker


重启docker


开机启动docker



docker镜像相关的命令

查看镜像


搜索镜像


拉取镜像


删除镜像


删除所有镜像


Docker容器相关命令

查看容器



创建容器


注意


如果通过-it创建的容器,退出容器哦之后就关闭了
该创建方式通过exit退出之后不会关闭容器



进入容器


启动容器


关闭容器


删除容器


删除所有容器


查看容器信息



Docker容器的数据卷

Docker容器删除后,在容器中产生的数据还在吗?
Docker容器和外部机器可以直接交换文件吗?


容器之间想要进行数据交互?


数据卷:1.数据卷是宿主机中的一个目录或文件
2.当容器目录和数据卷目录绑定后,对方的修改会立即同步


3.一个数据卷可以被多个容器同时挂载
4.一个容器也可以呗挂载多个数据卷

数据卷的作用

1.容器数据持久化
2.外部机器和容器间通信
3,容器之间数据交换

配置数据卷

创建启动容器时,使用-v参数 设置数据卷


注意事项:
1.目录必须是绝对路径
2.如果目录不存在,会自动创建
3.可以挂载多个数据卷

恢复容器



数据卷容器

多容器进行数据交换
1.多个容器挂载同一个数据卷
2.数据卷容器


配置数据卷容器
1.创建启动c3数据卷容器,使用-v参数设置数据卷


2.创建启动c1 c2容器,使用–volumes-from参数 设置数据卷




Docker应用部署

MySQL部署

案例需求:
在Docker容器中部署MySQL,并通过外部mysql客户端操作MySQL Server


该操作行为称为端口映射
实现步骤:
第一步:搜索mysql镜像
第二步:拉取mysql镜像


第三步:创建容器、设置端口映射、目录映射



第四步:操作容器中的mysql




Tomcat部署

在Docker容器中部罢Tomcat,并通过外部机器访问Tomcat部署的项目。
实现步骤:
1.搜索tomcat镜像
2.拉取tomcat镜像
3.创建容器



4.部署项目
5.测试访问

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7天前
|
jenkins 持续交付 网络安全
Jenkins——使用Docker部署Jenkins详解
Jenkins——使用Docker部署Jenkins详解
18 0
|
4天前
|
JSON JavaScript 开发者
Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
【8月更文挑战第7天】Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
|
14天前
|
监控 安全 数据安全/隐私保护
【Docker项目实战】使用Docker部署OneTerm堡垒机
【8月更文挑战第6天】使用Docker部署OneTerm堡垒机
30 7
【Docker项目实战】使用Docker部署OneTerm堡垒机
|
1天前
|
运维 Java Devops
阿里云云效操作报错合集之部署docker时遇到报错,该怎么办
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
11天前
|
canal Kubernetes Docker
基于Kubernetes v1.25.0和Docker部署高可用集群(03部分)
基于Kubernetes v1.25.0和Docker部署高可用集群(03部分)
|
8天前
|
Ubuntu Linux Docker
弃用Docker Desktop:在WSL2中玩转Docker之Docker Engine 部署与WSL入门
弃用Docker Desktop:在WSL2中玩转Docker之Docker Engine 部署与WSL入门
47 4
|
12天前
|
Kubernetes Ubuntu Linux
基于Kubernetes v1.25.0和Docker部署高可用集群(02部分)
基于Kubernetes v1.25.0和Docker部署高可用集群(02部分)
|
8天前
|
Java 开发工具 Maven
docker-compose部署SpringCloud
docker-compose部署SpringCloud
22 1
|
11天前
|
jenkins 持续交付 开发工具
"引爆效率革命!Docker+Jenkins+GIT+Tomcat:解锁持续集成魔法,一键部署Java Web应用的梦幻之旅!"
【8月更文挑战第9天】随着软件开发复杂度的增加,自动化变得至关重要。本文通过实例展示如何结合Docker、Jenkins、Git与Tomcat建立高效的持续集成(CI)流程。Docker确保应用环境一致性;Jenkins自动化处理构建、测试和部署;Git管理源代码版本;Tomcat部署Web应用。在Jenkins中配置Git插件并设置项目,集成Docker构建Tomcat应用镜像并运行容器。此外,通过自动化测试、代码质量检查、环境隔离和日志监控确保CI流程顺畅,从而显著提高开发效率和软件质量。
32 3
|
10天前
|
关系型数据库 MySQL 数据安全/隐私保护
使用 Docker 部署一个文档管理系统,让宝贵文档不在丢失!
使用 Docker 部署一个文档管理系统,让宝贵文档不在丢失!