Docker自动化双主MySQL-01:安装docker并使用docker 获取镜像

本文涉及的产品
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
RDSClaw,2核4GB
简介:

nstall with yum
1.shell>sudo yum update
2.添加dockeryum
$ sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF

3.安装docker的包
shell>sudo yum install docker-engine
4.将docker加到服务里面
$ sudo systemctl enable docker.service
5.启动docker
$ sudo systemctl start docker
6.在容器中运行镜像看docker是否安装成功
$ sudo docker run --rm hello-world

二、使用docker 获取镜像:
1.查看docker是否运行:
[root@localhost ~]# ps aux | grep docker
root 8229 1.6 0.6 944968 49924 ? Ssl 10:54 0:13 /usr/bin/dockerd
root 8235 0.0 0.1 367832 12216 ? Ssl 10:54 0:00 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --shim docker-containerd-shim --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --runtime docker-runc
root 8827 0.0 0.0 112652 960 pts/1 S+ 11:07 0:00 grep --color=auto docker
2.使用docker获取镜像:

可以使用 docker pull 命令来从仓库获取所需要的镜像

[root@localhost ~]#docker pull centos
[root@localhost ~]# docker images 有哪些镜像
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 0584b3d2cf6d 6 weeks ago 196.5 MB
hello-world latest c54a2cc56cbb 5 months ago 1.848 kB
3.查看后台运行docker镜像
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e793eb3f32c2 centos "/bin/bash" 3 minutes ago Up 3 minutes alisql
4.进入docker里面
[root@localhost ~]# docker exec -it e793eb3f32c2 /bin/bash
[root@e793eb3f32c2 /]#
查看容器:
[root@localhost opt]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e793eb3f32c2 centos "/bin/bash" 6 hours ago Up 6 hours alisql
将容器提交为镜像
[root@localhost opt]# docker commit -m "install alisql" -a "wjj" e793eb3f32c2 alisql/m:5.6.32
sha256:3dff1697293ac450627ce4d6283c215315dcef3256d00206be5cabb831314780

其中, -m 来指定提交的说明信息,跟我们使用的版本控制工具一样; -a 可以
指定更新的用户信息;之后是用来创建镜像的容器的 ID;最后指定目标镜像的仓库
名和 tag 信息。创建成功后会返回这个镜像的 ID 信息。
使用 docker images 来查看新创建的镜像。

[root@localhost opt]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
alisql/m 5.6.32 3dff1697293a About a minute ago 2.181 GB

之后,可以使用新的镜像来启动容器

导出镜像:
[root@localhost opt]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
alisql_m 5.6.32 e1b266255ad5 2 minutes ago 2.181 GB
3dff1697293a 8 minutes ago 2.181 GB
53c6ea2f5444 30 minutes ago 5.117 GB
centos latest 0584b3d2cf6d 6 weeks ago 196.5 MB
hello-world latest c54a2cc56cbb 5 months ago 1.848 kB

[root@localhost docker_images]# docker save -o alisql_m.tar alisql/m:5.6.32
[root@localhost docker_images]# docker save -o alisql_s.tar alisql/s:5.6.32

save opt/alisql_m.tar的意思是把image 保存在opt目录里并命令为alisql_m.tar

使用新的镜像来启动容器:
[root@localhost docker_images]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
alisql/s 5.6.32 f502d6c3c562 3 minutes ago 2.456 GB
alisql/m 5.6.32 ee0aea15ad83 4 minutes ago 2.497 GB

docker run 就是运行容器的命令,具体格式我们会在后面的章节讲解,我们这里简要的说明一下上面用到的参数
-ti:这是两个参数,一个是 -i:交互式操作,一个是 -t 终端。我们这里打算进入 bash 执行一些命令并查看返回结果,因此我们需要交互式终端。
使用新的镜像来启动容器:
[root@localhost ~]# docker run -t -i alisql_s:5.6.32 /bin/bash

827 docker ps -a
828 docker rm -f 79cab3e7e30a
829 docker rmi bc9edf41d6b2
docker exec -it 容器名 执行脚本或者获取脚本位置

docker build -t ma .

[root@localhost docker_mysql_5.6]# docker ps -aq
0de7852c6992
8e3134e3ed0c
4cbd4c39e332
67f51a8e755b
56d33b2836ea
88dd6a8cf960
d38476a689b6
58bfe5f40850
d5c9fbe08387
[root@localhost docker_mysql_5.6]# docker ps -aq | xargs docker rm -f
0de7852c6992
8e3134e3ed0c
4cbd4c39e332
67f51a8e755b
56d33b2836ea
88dd6a8cf960
d38476a689b6
58bfe5f40850
d5c9fbe08387

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
9月前
|
关系型数据库 应用服务中间件 nginx
Docker一键安装中间件(RocketMq、Nginx、MySql、Minio、Jenkins、Redis)
本系列脚本提供RocketMQ、Nginx、MySQL、MinIO、Jenkins和Redis的Docker一键安装与配置方案,适用于快速部署微服务基础环境。
|
7月前
|
关系型数据库 数据库 PostgreSQL
docker 安装 Postgres 17.6
本文介绍如何通过Docker安装和配置PostgreSQL 17.6。内容包括拉取镜像、导出配置文件、运行容器并挂载数据与配置文件目录,以及进入容器使用psql操作数据库的完整步骤,便于持久化管理和自定义配置。
1231 3
docker 安装 Postgres 17.6
|
6月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
750 6
|
6月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
580 2
|
6月前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
935 4
|
8月前
|
关系型数据库 MySQL 数据库
为什么 MySQL 不推荐用 Docker 部署?
本文探讨了MySQL是否适合容器化的问题,分析了Docker容器在数据安全、性能瓶颈、状态管理及资源隔离等方面的挑战,并指出目前主流分布式数据库如TDSQL和OceanBase仍倾向于部署在物理机或KVM上。
420 0
|
10月前
|
存储 NoSQL MongoDB
Docker中安装MongoDB并配置数据、日志、配置文件持久化。
现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。
1205 4
|
9月前
|
Linux Docker Windows
windows docker安装报错适用于 Linux 的 Windows 子系统必须更新到最新版本才能继续。可通过运行 “wsl.exe --update” 进行更新。
适用于 Linux 的 Windows 子系统需更新至最新版本(如 wsl.2.4.11.0.x64.msi)以解决 2025 年 Windows 更新后可能出现的兼容性问题。用户可通过运行 “wsl.exe --update” 或访问提供的链接下载升级包进行更新。
3691 0

热门文章

最新文章

下一篇
开通oss服务