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博客

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

相关推荐
闲人编程15 小时前
从多个数据源(CSV, Excel, SQL)自动整合数据
python·mysql·数据分析·csv·存储·数据源·codecapsule
yannan2019031315 小时前
Docker容器
运维·docker·容器
泽020215 小时前
Linux之环境变量
java·linux·redis
disanleya15 小时前
MySQL默认密码不安全?如何首次登录并强化?
数据库·mysql·安全
花开富贵贼富贵15 小时前
MySQL 核心高级特性
运维·数据库·mysql
济南java开发,求内推15 小时前
Redis一个服务器部署多个节点
服务器·数据库·redis
小宁爱Python15 小时前
Windows Docker Desktop占用C盘空间过大解决办法集合
运维·docker·容器
Full Stack Developme15 小时前
Python Redis 教程
开发语言·redis·python
-雷阵雨-16 小时前
MySQL——数据库约束
数据库·mysql
大筒木老辈子16 小时前
MySQL笔记---C/C++访问MySQL数据库
数据库·笔记·mysql