Docker实战之下载Mysql、Redis、Zimg

Docker实战之下载Mysql、Redis、Zimg

一、Mysql

bash 复制代码
docker search mysql 		# 找到合适的mysql镜像,一般选STAR最多的
docker pull mysql			# 拉取mysql的镜像,不写版本默认是latest(最新版)
docker run -itd --name mysql1 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql # 根据拉取的mysql镜像创建容器mysql1并运行
docker ps					# 查看正在运行的容器
docker exec -it xxx /bin/bash	# 进入mysql容器,xxx指容器名称或id这里是容器名称是mysql1
mysql -u root -p			# 登录mysql
docker exec -it xxx env LANG=C.UTF-8 /bin/bash	# 见下方常见问题

参数数明:

  • --name mysql1:为创建的容器起个名字mysql1
  • -p 3306:3306:映射容器的3306端口到宿主机的3306端口,外部主机可以直接通过宿主机ip:3306访问到容器的MySQL服务
  • -e MYSQL_ROOT_PASSWORD=123456:设置MySQL服务root用户密码为123456,-e参数用于向容器中传递环境变量
  • env LANG=C.UTF-8 指定环境变量LANG=C.UTF-8

常见问题:

  1. Docker版本Mysql容器中不支持输入中文,可以在进入容器时更换一种可支持中文的字符集,上述命令最后一条
  2. 进入容器后不会退出,先按Ctrl p松开再按Ctrl q可挂起容器

二、Redis

bash 复制代码
docker search redis 	# 找到合适的redis镜像,一般选STAR最多的
docker pull redis		# docker拉取redis镜像,不写版本默认是latest(最新版)
docker run -itd --name myRedis -p 6379:6379 redis --requirepass "123456"	# 根据拉取的redis镜像创建容器myRedis并运行
docker ps				# 查看正在运行的容器
docker exec -it xxx redis-cli	# 在xxx容器执行redis进入客户端命令redis-cli,xxx指容器名称或id,这里容器名称时是myRedis

参数数明:

  • --name myRedis:为创建的容器起个名字myRedis
  • -p 6379:6379:映射容器的6379端口到宿主机的6379端口,外部主机可以直接通过宿主机ip:6379访问到容器的Redis服务
  • --requirepass "123456":设置Redis的访问密码为123456

三、Zimg

bash 复制代码
docker search zimg			# 找到合适的redis镜像,一般选STAR最多的
docker pull iknow0612/zimg	# 拉取zimg镜像,iknow0612/zimg STAR最多
docker images 				# 查看所有镜像
docker run -itd -p 4869:4869 --name zimg-server iknow0612/zimg	# 根据zimg镜像创建并启动容器
docker ps					# 查看启动的容器

参数数明:同上

如果为下载了桌面版可以在图形界面启动关闭容器

四、常见问题与疑惑

以mysql为例

Docker下载的mysql和本地下载的有什么区别:
  1. 安装和部署方式:传统的本地安装MySQL需要下载安装包、配置环境变量、手动创建启动服务等一系列步骤。而使用Docker安装MySQL则可以通过简单的命令将镜像下载到本地,然后一键启动容器即可使用。Docker提供了许多常用的MySQL镜像,如官方MySQL镜像、docker官方镜像、腾讯云镜像等,使得安装和部署变得更为简单和快速。
  2. 运行方式:本地安装的MySQL运行在一台机器上,且一台机器上只能运行一个MySQL实例。如果有多个MySQL实例的需求,需要进行额外的配置,可能会遇到冲突问题。而Docker中的MySQL则可以在一台机器上运行多个实例,并且每个实例都可以应用不同的配置文件,提供了更好的隔离性。
  3. 资源和性能管理:Docker容器具有轻量级和资源隔离的特点,可以更好地管理和控制MySQL实例的资源使用,例如CPU、内存等。这有助于实现更高效的资源利用和性能优化。
  4. 可扩展性和灵活性:Docker的容器化技术使得MySQL实例的扩展变得更为灵活和快速。通过简单的命令就可以实现容器的创建、删除、迁移等操作,从而方便地进行横向扩展和容灾恢复。

删除镜像或容器,移植镜像或容器等等详细信息请看Docker介绍与使用-CSDN博客

如有任何问题欢迎评论区留言

相关推荐
海兰4 小时前
【数据库】tdsql(mysql8.0)优化思考三
数据库·redis
暖和_白开水7 小时前
数据分析agent(十三_3):docker mysql容器镜像服务的异常错误
mysql·docker·容器
爱小黄9 小时前
使用docker搭建集群-使用 Docker 搭建 KingbaseES 集群
运维·docker·容器
ttwuai10 小时前
AI 生成后台改数据后,操作日志别只记按钮:Go + MySQL 怎么验
数据库·人工智能·mysql·golang
余—笙10 小时前
Docker安装rabbitmq并安装延迟队列插件
docker·容器·rabbitmq
韩楚风11 小时前
【参天引擎】一次宕机后的数据恢复,让我把 Cantian 持久化与恢复的六大机制全搞明白了
服务器·网络·数据库·分布式·mysql·架构·cantian
Mico1812 小时前
MySQL 8.0.35 mydumper/myloader 备份恢复工具使用
mysql
心念枕惊12 小时前
Docker--Docker Swarm集群
运维·docker·容器
敖行客 Allthinker12 小时前
docker容器安装Python反推镜像步骤(适用于临时调试用)
python·docker·容器
摇曳的精灵14 小时前
dify的docker部署
运维·docker·容器·dify