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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 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

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
16天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
30 4
|
1月前
|
关系型数据库 MySQL Linux
Docker安装Mysql5.7,解决无法访问DockerHub问题
当 Docker Hub 无法访问时,可以通过配置国内镜像加速来解决应用安装失败和镜像拉取超时的问题。本文介绍了如何在 CentOS 上一键配置国内镜像加速,并成功拉取 MySQL 5.7 镜像。
354 2
Docker安装Mysql5.7,解决无法访问DockerHub问题
|
22天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
63 3
|
22天前
|
关系型数据库 MySQL Docker
docker环境下mysql镜像启动后权限更改问题的解决
在Docker环境下运行MySQL容器时,权限问题是一个常见的困扰。通过正确设置目录和文件的权限,可以确保MySQL容器顺利启动并正常运行。本文提供了多种解决方案,包括在主机上设置正确的权限、使用Dockerfile和Docker Compose进行配置、在容器启动后手动更改权限以及使用 `init`脚本自动更改权限。根据实际情况选择合适的方法,可以有效解决MySQL容器启动后的权限问题。希望本文对您在Docker环境下运行MySQL容器有所帮助。
46 1
|
23天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
42 2
|
24天前
|
存储 SQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(1)作者——LJS[含MySQL的下载、安装、配置详解步骤及报错对应解决方法]
Mysql And Redis基础与进阶操作系列(1)之[MySQL的下载、安装、配置详解步骤及报错对应解决方法]
|
25天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
77 2
|
25天前
|
Prometheus 监控 Cloud Native
基于Docker安装Grafana和Prometheus
Grafana 是一款用 Go 语言开发的开源数据可视化工具,支持数据监控和统计,并具备告警功能。通过 Docker 部署 Grafana 和 Prometheus,可实现系统数据的采集、展示和告警。默认登录用户名和密码均为 admin。配置 Prometheus 数据源后,可导入主机监控模板(ID 8919)进行数据展示。
64 2
|
27天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
56 2
|
28天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
34 3
下一篇
无影云桌面