Docker简单操作及软件部署

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 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.测试访问

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
3月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
787 108
kde
|
1月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
kde
721 4
|
3月前
|
运维 Devops 持续交付
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
在企业IT建设中,软件部署常面临效率低、易出错等问题。通过Docker与自动化工具,可实现高效、标准化和可追溯的部署流程,提升企业应用交付效率,降低运维门槛,助力中小企业实现自动化部署。
269 5
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
|
2月前
|
JavaScript 算法 前端开发
【Docker项目实战】使用Docker部署paopao-ce微社区
【Docker项目实战】使用Docker部署paopao-ce微社区
348 84
【Docker项目实战】使用Docker部署paopao-ce微社区
|
3月前
|
运维 Cloud Native 开发者
Docker:现代化应用开发与部署的神器
Docker:现代化应用开发与部署的神器
230 101
|
3月前
|
设计模式 Linux 开发工具
Docker部署会吗?
本段内容主要介绍了Docker常用命令、Linux基础指令及日志查看方法,还涉及SpringMVC的执行流程、设计模式与注解,适合用于面试中技术能力的展示。
139 0
|
1月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
109 5
|
2月前
|
存储 Docker Python
docker 部署 sftp
本文介绍SFTP服务的部署与配置,包括users.conf用户配置规则、Docker容器运行命令及上传目录权限说明,重点解析atmoz/sftp镜像的chroot机制与子目录映射,确保用户登录后正确访问/upload目录,并提供Python脚本实现文件上传示例。
213 13
docker 部署 sftp
|
2月前
|
运维 Linux 数据库
基于 Docker 部署 n8n 指南,新手一看就会
本教程详解如何通过 Docker 快速部署开源自动化工具 n8n,适合新手快速上手。内容涵盖官方部署步骤、常见难点及第三方一键部署方案,助你高效搭建自动化工作流平台。
1031 6