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

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
22天前
|
存储 人工智能 自然语言处理
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
ChatMCP 是一款基于模型上下文协议(MCP)的 AI 聊天客户端,支持多语言和自动化安装。它能够与多种大型语言模型(LLM)如 OpenAI、Claude 和 OLLama 等进行交互,具备自动化安装 MCP 服务器、SSE 传输支持、自动选择服务器、聊天记录管理等功能。
136 15
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
|
1月前
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
59 9
|
2月前
|
关系型数据库 MySQL Java
【Docker最新版教程】一文带你快速入门Docker常见用法,实现容器编排和自动化部署上线项目
Docker快速入门到项目部署,MySQL部署+Nginx部署+docker自定义镜像+docker网络+DockerCompose项目实战一文搞定!
|
3月前
|
Java 关系型数据库 MySQL
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
这篇文章是关于自动化测试项目实战笔记,涵盖了JDK、Tomcat、MySQL、Jpress环境的安装和搭建过程,以及测试用例和常见问题总结。
65 1
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
|
2月前
|
关系型数据库 MySQL Docker
docker环境下mysql镜像启动后权限更改问题的解决
在Docker环境下运行MySQL容器时,权限问题是一个常见的困扰。通过正确设置目录和文件的权限,可以确保MySQL容器顺利启动并正常运行。本文提供了多种解决方案,包括在主机上设置正确的权限、使用Dockerfile和Docker Compose进行配置、在容器启动后手动更改权限以及使用 `init`脚本自动更改权限。根据实际情况选择合适的方法,可以有效解决MySQL容器启动后的权限问题。希望本文对您在Docker环境下运行MySQL容器有所帮助。
289 1
|
3月前
|
运维 jenkins 持续交付
自动化部署的魅力:如何用Jenkins和Docker简化运维工作
【10月更文挑战第7天】在现代软件开发周期中,快速且高效的部署是至关重要的。本文将引导你理解如何使用Jenkins和Docker实现自动化部署,从而简化运维流程。我们将从基础概念开始,逐步深入到实战操作,让你轻松掌握这一强大的工具组合。通过这篇文章,你将学会如何利用这些工具来提升你的工作效率,并减少人为错误的可能性。
|
3月前
|
Web App开发 Java 测试技术
一、自动化:web自动化。Selenium 入门指南:从安装到实践
一、自动化:web自动化。Selenium 入门指南:从安装到实践
65 0
|
4月前
|
Linux Shell 网络安全
Kickstart 自动化安装
Kickstart结合PXE技术实现Linux系统的自动化安装,适用于需批量部署一致版本的服务器场景,以减少重复劳动。通过搭建Kickstart+DHCP+NFS+TFTP+PXE架构,服务器可远程启动并下载安装配置。具体包括:配置TFTP服务以传输启动文件,设置PXE引导参数指向Kickstart脚本,利用DHCP分配IP地址。这种方式极大地提高了部署效率与一致性。
87 2
|
4月前
|
Linux
Kickstart 自动化安装
随着业务增长,服务器需求增加且需统一Linux版本以便维护。Kickstart自动化安装平台结合PXE技术,简化安装流程,显著节省时间。Intel开发的PXE技术允许工作站通过网络下载映像并启动操作系统,整个架构包括Kickstart+DHCP+NFS+TFTP+PXE。配置涉及DHCP、TFTP安装及PXE内核模块配置,最终实现远程自动化安装Linux系统。
58 3
|
5月前
|
存储 安全 Ubuntu
Docker 镜像与 Docker 容器的区别
【8月更文挑战第27天】
405 5